日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

head.s 分析——Linux-0.11 学习笔记(三)

發(fā)布時(shí)間:2025/3/15 linux 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 head.s 分析——Linux-0.11 学习笔记(三) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目:head.s 分析

head.s 程序在被編譯生成目標(biāo)文件后會(huì)與內(nèi)核其他程序一起被鏈接成 system 模塊,它位于 system 模塊的最開(kāi)始部分,這也就是為什么稱其為“頭部(head)”程序的原因。

從這里開(kāi)始,內(nèi)核完全是在保護(hù)模式下運(yùn)行了。head.s 匯編程序與前面的語(yǔ)法格式不同,它采用的是AT&T匯編語(yǔ)言格式,并且需要使用 GNU 的 as 和 ld 進(jìn)行編譯和連接。因此請(qǐng)注意代碼中賦值的方向是從左到右。

這段程序?qū)嶋H上處于內(nèi)存地址0處,在理解代碼的時(shí)候,請(qǐng)務(wù)必記住。

一、加載段寄存器

.text .globl idt,gdt,pg_dir,tmp_floppy_area pg_dir: # 頁(yè)目錄將會(huì)存放在這里,把這里的代碼覆蓋掉 .globl startup_32 startup_32:movl $0x10,%eaxmov %ax,%dsmov %ax,%esmov %ax,%fsmov %ax,%gslss stack_start,%esp

第6行:0x10 是數(shù)據(jù)段的選擇子,在 setup.s 文件的末尾處定義,基地址是 0,段界限是 0x7FF,粒度 4KB,可讀可寫(xiě),向上擴(kuò)展。如果讀者忘了,可以參考我的博文:setup.s 分析

7~10行:令ds,es,fs,gs指向數(shù)據(jù)段。

第11行:stack_start 的定義在 kernel/sched.c(以后會(huì)分析)中。

為了閱讀方便,截取部分代碼在這里。

// kernel/sched.c long user_stack [ PAGE_SIZE>>2 ] ;struct {long * a;short b;} stack_start = { & user_stack [PAGE_SIZE>>2] , 0x10 };

LSS指令

lss指令的格式是

LSS r32,m16:32

含義是用內(nèi)存中的長(zhǎng)指針加載 SS:r32

Load SS:r32 with far pointer from memory

m16:32表示一個(gè)內(nèi)存操作數(shù),這個(gè)操作數(shù)是一個(gè)長(zhǎng)指針,由2部分組成:16位的段選擇子和32位的偏移。

A memory operand containing a far pointer composed of two numbers. The number to the left of the colon corresponds to the pointer’s segment selector. The number to the right corresponds to its offset.

注意,長(zhǎng)指針在內(nèi)存中的布局如下:低4字節(jié)是偏移,高2字節(jié)是段選擇子。

stack_start 處的6字節(jié)是long * a和short b.
a被賦值為user_stack[]數(shù)組最末端的地址,b被賦值為0x10.

所以,第11行代碼表示用a的值加載ESP,用b的值加載SS,即棧的初始化。

二、設(shè)置中斷描述符表(IDT)

call setup_idt setup_idt:lea ignore_int,%edxmovl $0x00080000,%eaxmovw %dx,%ax /* selector = 0x0008 = cs */movw $0x8E00,%dx /* interrupt gate:dpl=0, present */lea idt,%edi # 取idt的偏移給edimov $256,%ecx # 循環(huán)256次 rp_sidt:movl %eax,(%edi) # eax -> [edi]movl %edx,4(%edi) # edx -> [edi+4]addl $8,%edi # edi + 8 -> edidec %ecxjne rp_sidtlidt idt_descr # 加載IDTRret...idt_descr:.word 256*8-1 # idt contains 256 entries.long idt # IDT 的線性基地址...idt: .fill 256,8,0 # idt is uninitialized

IDT 共 256 項(xiàng),作者使各個(gè)表項(xiàng)均指向一個(gè)只報(bào)錯(cuò)誤的啞中斷子程序ignore_int。

2~5行:組裝中斷門(mén),示意圖如下,藍(lán)色圓圈是行號(hào)。

2~5行:在edx、eax中組合設(shè)置出8字節(jié)默認(rèn)的中斷描述符值。eax 含有描述符低4字節(jié),edx 含有高4字節(jié)。

9~14行:在idt表每一項(xiàng)中都放置該描述符,共 256 項(xiàng)。內(nèi)核在隨后的初始化過(guò)程中會(huì)替換那些真正使用的中斷描述符項(xiàng)。

中斷處理過(guò)程 ignore_int

/* This is the default interrupt "handler" :-) */ int_msg:.asciz "Unknown interrupt\n\r" .align 2 ignore_int:pushl %eaxpushl %ecxpushl %edxpush %ds # 這里請(qǐng)注意ds,es,fs,gs等雖然是16位的寄存器,# 但仍然會(huì)以32位的形式入棧,即需要占用4個(gè)字節(jié)的??臻g。 push %espush %fs # 以上用于保存寄存器movl $0x10,%eax # 0x10是數(shù)據(jù)段選擇子mov %ax,%dsmov %ax,%esmov %ax,%fs # ds,es,fs均指向數(shù)據(jù)段pushl $int_msg call printk # 該函數(shù)在 kernel/printk.c 中popl %eax # 清理參數(shù)pop %fspop %espop %dspopl %edxpopl %ecxpopl %eaxiret

第17行:把 printk 函數(shù)的參數(shù)入棧。注意:若符號(hào) int_msg 前不加 $,則表示把 int_msg 符號(hào)處的雙字Unkn入棧。

第18行:調(diào)用 printk 函數(shù),該函數(shù)在 kernel/printk.c 中,以后再具體分析。

第19行:清理參數(shù) $int_msg.

說(shuō)明:匯編程序調(diào)用C函數(shù)時(shí),函數(shù)的入口參數(shù)使用棧來(lái)傳送,參數(shù)的傳遞順序是從右到左。調(diào)用者負(fù)責(zé)清除參數(shù)占用的??臻g。C函數(shù)的返回值如果是32位整數(shù),則保存在eax寄存器;如果是64位整數(shù),則保存在edx:eax寄存器。

具體可以參考我的博文: 在匯編程序中調(diào)用C函數(shù)

三、設(shè)置全局描述符表(GDT),加載 GDTR

call setup_gdt setup_gdt:lgdt gdt_descr # 加載GDTRret

LGDT指令的格式是:

LGDT m16&32

該指令的操作數(shù)是一個(gè) 48 位(6字節(jié))的內(nèi)存區(qū)域。在這6字節(jié)的內(nèi)存區(qū)域中,要求前(低)16位是 GDT 的界限值,后(高)32 位是 GDT 的基地址 。該指令在實(shí)模式和保護(hù)模式下都可以執(zhí)行。

gdt_descr:.word 256*8-1 .long gdt gdt: .quad 0x0000000000000000 /* NULL descriptor */.quad 0x00c09a0000000fff /* 16Mb */.quad 0x00c0920000000fff /* 16Mb */.quad 0x0000000000000000 /* TEMPORARY - don't use */.fill 252,8,0 /* space for LDT's and TSS's etc */

GDT 定義的描述符如下:

索引選擇子段類型LimitGDPL其他
0------
10x08代碼段0xFFF1(表示4KB)0非一致,可讀
20x10數(shù)據(jù)段0xFFF1(表示4KB)0向上擴(kuò)展,可寫(xiě)

段長(zhǎng)度可以這樣算:(Limit + 1)* 4KB = (0xFFF + 1) * 4KB = 0x1000 * 4KB = 16MB

四、重新加載段寄存器

call setup_idt call setup_gdt movl $0x10,%eax # reload all the segment registers mov %ax,%ds # after changing gdt. CS was already mov %ax,%es # reloaded in 'setup_gdt' mov %ax,%fs mov %ax,%gs lss stack_start,%esp

由于段描述符中的段限長(zhǎng)(Limit)從setup.s中的 8MB 改成了本程序設(shè)置的 16MB,因此這里再次對(duì)所有段寄存器執(zhí)行加載操作是必須的。另外,如果不對(duì) CS 再次加載,那么在執(zhí)行到第1行時(shí),CS段寄存器的“描述符高速緩存器”中的段限長(zhǎng)還是 8MB。這樣看來(lái)應(yīng)該重新加載CS

但是由于 setup.s 中的代碼段描述符與本程序中重新設(shè)置的代碼段描述符除了段限長(zhǎng)以外其余部分完全一樣,8MB 的限長(zhǎng)在內(nèi)核初始化階段不會(huì)有問(wèn)題,而且在以后內(nèi)核執(zhí)行段間跳轉(zhuǎn)時(shí)會(huì)重新加載 CS,因此這里沒(méi)有加載它并沒(méi)有讓程序出錯(cuò)。

針對(duì)該問(wèn)題,目前內(nèi)核中就在movl $0x10,%eax之前添加了一條長(zhǎng)跳轉(zhuǎn)指令ljmp $(_KERNEL_CS), $1f,大概的代碼如下:

call setup_idtcall setup_gdt # reload all the segment registersljmp $(_KERNEL_CS), $1f 1:movl $0x10,%eax mov %ax,%ds mov %ax,%es mov %ax,%fsmov %ax,%gslss stack_start,%esp

注意:以上的代碼只是為了說(shuō)明問(wèn)題,并非源碼。

ljmp $(_KERNEL_CS), $1f

$1f中的1是標(biāo)號(hào),緊跟在其后的f表示向前(forwards)。這條指令會(huì)跳轉(zhuǎn)到第6行來(lái)確保 CS 被重新加載。

五、檢測(cè)A20是否開(kāi)啟

xorl %eax,%eax 1: incl %eax # check that A20 really is enabledmovl %eax,0x000000 # loop forever if it isn'tcmpl %eax,0x100000je 1b

用于測(cè)試 A20 地址線是否已開(kāi)啟。采用的方法是向內(nèi)存地址 0x0_0000 處寫(xiě)入任意一個(gè)數(shù)值,然后看內(nèi)存地址 Ox10_0000(1M)處是否也是這個(gè)數(shù)值。如果一直相同的話,就一直比較下去。死機(jī)表示 A20 線沒(méi)有選通。

六、檢測(cè)x87協(xié)處理器

為了彌補(bǔ)x86系列在進(jìn)行浮點(diǎn)運(yùn)算時(shí)的不足,Intel于1980年推出了x87系列數(shù)學(xué)協(xié)處理器,那時(shí)x87是一個(gè)外置的、可選的芯片。1989年,Intel發(fā)布了486處理器。從486開(kāi)始,以后的CPU一般都內(nèi)置了協(xié)處理器。這樣,對(duì)于486以前的計(jì)算機(jī)而言,操作系統(tǒng)檢測(cè)x87協(xié)處理器是否存在就非常必要了。

注:1991年,一名21歲的就讀于芬蘭赫爾辛基大學(xué)的計(jì)算機(jī)科學(xué)專業(yè)學(xué)生—— Linus Torvalds 基于 gcc、bash 開(kāi)發(fā)了針對(duì) 386 機(jī)器的 Liniux內(nèi)核。

下面這段程序用于檢查數(shù)學(xué)協(xié)處理器芯片是否存在。方法是修改控制寄存器CR0,在假設(shè)協(xié)處理器存在的情況下執(zhí)行一個(gè)協(xié)處理器指令,如果出錯(cuò)的話則說(shuō)明協(xié)處理器芯片不存在。

movl %cr0,%eax # check math chipandl $0x80000011,%eax # Save PE ET PGorl $2,%eax # set MP=1movl %eax,%cr0call check_x87jmp after_page_tables

第2行:保留PE、ET、PG位,其他位都清零。

PE 指示是否開(kāi)啟保護(hù)模式。PG 指示是否開(kāi)啟分頁(yè)。

關(guān)于ET,Intel 手冊(cè)如是說(shuō):

Extension Type (bit 4 of CR0). Reserved in the P6 family and Pentium ? processors. (In the P6 family processors, this flag is hardcoded to 1.) In the Intel 386? and Intel 486? processors, this flag indicates support of Intel 387 DX math coprocessor instructions when set.

第3行,設(shè)置MP=1.

這塊我不是很明白,根據(jù)下面的表格,在數(shù)學(xué)協(xié)處理器存在的時(shí)候,推薦設(shè)置EM=0,MP=1.

既然作者的意圖是假設(shè)數(shù)學(xué)協(xié)處理器存在,那么就設(shè)置 EM=0,MP=1 吧。

check_x87:fninit # 向協(xié)處理器發(fā)出初始化命令fstsw %ax # 把FPU的狀態(tài)字保存到AX中# 初始化后狀態(tài)字應(yīng)該為0,否則說(shuō)明協(xié)處理器不存在cmpb $0,%alje 1f # 存在則跳轉(zhuǎn)到標(biāo)號(hào)1處movl %cr0,%eax xorl $6,%eax # 把 eax 的值和 0110b 異或movl %eax,%cr0ret.align 2 1: .byte 0xDB,0xE4 /* fsetpm for 287, ignored by 387 */ret

第12行:0xDB,0xE4這兩個(gè)字節(jié)是 80287 協(xié)處理器指令 fsetpm 的機(jī)器碼。其作用是把 80287 設(shè)置為保護(hù)模式。80387 無(wú)需該指令,它會(huì)把該指令看作是空操作。

關(guān)于異或

按位異或的3個(gè)特點(diǎn)

  • 0異或任何數(shù) = 任何數(shù)
  • 1異或任何數(shù) = 任何數(shù)取反
  • 任何數(shù)異或自己 = 把自己置0
  • 按位異或的幾個(gè)常見(jiàn)用途

    1. 使某些特定的位翻轉(zhuǎn)

    ? 例如要使 EAX 的 b1 位和 b2 位翻轉(zhuǎn):
          EAX = EAX ^ 00000110

    ? 代碼第8行就是這種用法,把 EM 和 MP 翻轉(zhuǎn)。

    2. 不使用臨時(shí)變量就可以實(shí)現(xiàn)兩個(gè)值的交換

    ? 例如 a=11110000,b=00001111,要交換a、b的值,可通過(guò)下列語(yǔ)句實(shí)現(xiàn):

    a = a^b;   //a=11111111 b = b^a;   //b=11110000 a = a^b;   //a=00001111

    3. 在匯編語(yǔ)言中經(jīng)常用于將變量置零

    ? xor eax,eax

    4. 快速判斷兩個(gè)值是否相等

    ? 例如判斷兩個(gè)整數(shù)a、b是否相等,可通過(guò)下列語(yǔ)句實(shí)現(xiàn):
    ? return ((a ^ b) == 0);

    關(guān)于.align

    .align是匯編語(yǔ)言指示符。其含義是邊界對(duì)齊調(diào)整。”2”表示把隨后的代碼或數(shù)據(jù)的偏移位置調(diào)整到地址值最后 2 比特位為零的位置,即按 4(=2^2)字節(jié)方式對(duì)齊內(nèi)存地址。不過(guò)現(xiàn)在 GNU as 直接寫(xiě)出對(duì)齊的值而非 2 的冪次。使用該指示符的目的是為了提高 32 位 CPU 訪問(wèn)內(nèi)存中代碼或數(shù)據(jù)的效率。

    七、開(kāi)啟分頁(yè),跳轉(zhuǎn)到 main()

    Linus 將內(nèi)核的頁(yè)表直接放在頁(yè)目錄之后,使用了4個(gè)頁(yè)表來(lái)尋址16MB的物理內(nèi)存。如果你有多于16MB的內(nèi)存,就需要在這里進(jìn)行擴(kuò)充修改。關(guān)于分頁(yè)機(jī)制,說(shuō)來(lái)話長(zhǎng),不了解的朋友可以參考我的博文:

    x86分頁(yè)機(jī)制

    Linus 在物理地址0x0處開(kāi)始存放1頁(yè)頁(yè)目錄和4頁(yè)頁(yè)表。頁(yè)目錄是系統(tǒng)所有進(jìn)程公用的,而其后的4頁(yè)頁(yè)表則屬于內(nèi)核專用,它們把線性地址 0x000000~0xFFFFFF 一一映射到物理地址 0x000000~0xFFFFFF。

    .org 0x1000 #從偏移 0x1000 處開(kāi)始放第1個(gè)頁(yè)表(偏移0開(kāi)始處將存放頁(yè)目錄) pg0:.org 0x2000 #從偏移 0x2000 處開(kāi)始放第2個(gè)頁(yè)表 pg1:.org 0x3000 #從偏移 0x3000 處開(kāi)始放第3個(gè)頁(yè)表 pg2:.org 0x4000 #從偏移 0x4000 處開(kāi)始放第4個(gè)頁(yè)表 pg3:.org 0x5000 #定義下面的內(nèi)存數(shù)據(jù)塊從偏移 0x5000 處開(kāi)始

    .ORG偽指令用來(lái)表示起始的偏移地址,緊接著ORG的數(shù)值就是偏移地址的起始值。ORG偽操作常用來(lái)指定數(shù)據(jù)的存儲(chǔ)地址,有時(shí)也用來(lái)指定代碼段的起始地址。更詳細(xì)的解釋可以參考我的博文:

    ORG 偽指令

    tmp_floppy_area:.fill 1024,1,0 #共保留1024項(xiàng),每項(xiàng)1字節(jié),填充數(shù)值0

    fill偽指令的格式是 .fill repeat,size,value
    表示產(chǎn)生 repeat 個(gè)大小為 size 字節(jié)的重復(fù)拷貝。size 最大是 8,size 字節(jié)的值是 value.

    “當(dāng) DMA (直接存儲(chǔ)器訪問(wèn))不能訪問(wèn)緩沖塊時(shí),tmp_floppy_area 內(nèi)存塊就可供軟盤(pán)驅(qū)動(dòng)程序使用。其地址需要對(duì)齊,這樣就不會(huì)跨越 64KB 邊界?!?
    這是書(shū)上的話,我不甚理解。暫不深究,以后再說(shuō)。

    為調(diào)用main()函數(shù)做準(zhǔn)備

    after_page_tables:pushl $0 # These are the parameters to main :-)pushl $0pushl $0pushl $L6 # return address for main, if it decides to.pushl $mainjmp setup_paging # 設(shè)置頁(yè)目錄和頁(yè)表,并開(kāi)啟分頁(yè) L6:jmp L6 # main should never return here, but# just in case, we know what happens.

    2~6行:為跳轉(zhuǎn)到 init/main.c 中的 main() 函數(shù)作準(zhǔn)備工作。

    2~4行:前3個(gè)入棧 0 值應(yīng)該分別表示 envp、argv 指針和 argc 的值,但 main() 沒(méi)有用到。

    第5行:壓入返回地址。模擬調(diào)用(其實(shí)是使用JMP指令) main.c 程序時(shí)首先將返回地址入棧的操作,如果 main.c 程序真的退出,就會(huì)返回到標(biāo)號(hào) L6 處繼續(xù)執(zhí)行下去,即死循環(huán)。

    第6行:壓入 main() 函數(shù)代碼的地址。當(dāng)后面執(zhí)行 ret 指令時(shí),就會(huì)彈出 main() 的地址,并把控制權(quán)轉(zhuǎn)移到 init/main.c 程序中。

    依然可以參考我的那篇博文: 在匯編程序中調(diào)用C函數(shù)

    設(shè)置頁(yè)目錄和頁(yè)表

    setup_paging:movl $1024*5,%ecx # 每個(gè)頁(yè)表占用1024個(gè)雙字(4B),共5個(gè)頁(yè)表xorl %eax,%eax # eax = 0xorl %edi,%edi # edi = 0cldrep;stosl # eax -> es:[edi],edi每次增加4,重復(fù)ecx次movl $pg0+7,pg_dir /* set present bit/user r/w */movl $pg1+7,pg_dir+4 movl $pg2+7,pg_dir+8 movl $pg3+7,pg_dir+12 movl $pg3+4092,%edimovl $0xfff007,%eax /* 16Mb - 4096 + 7 (r/w user,p) */std 1: stosl /* fill pages backwards - more efficient :-) */subl $0x1000,%eaxjge 1bxorl %eax,%eax /* pg_dir is at 0x0000 */movl %eax,%cr3 /* cr3 - page directory start */movl %cr0,%eaxorl $0x80000000,%eaxmovl %eax,%cr0 /* set paging (PG) bit */ret /* this also flushes prefetch-queue */

    2~5行,把頁(yè)目錄和頁(yè)表清零。

    stosl:Store EAX at address ES:EDI

    7~10行,填寫(xiě)頁(yè)目錄表的前4項(xiàng)。關(guān)于表項(xiàng)的格式,可以參考我的博文 頁(yè)目錄項(xiàng)和頁(yè)表項(xiàng)

    位名稱含義
    0P存在位。為1表示頁(yè)表或者頁(yè)位于內(nèi)存中,為0表示不在內(nèi)存中,必須先予以創(chuàng)建或者從磁盤(pán)調(diào)入內(nèi)存后方可使用。
    1R/W讀寫(xiě)標(biāo)志。為1表示頁(yè)面可以被讀寫(xiě),為0表示只讀。當(dāng)處理器運(yùn)行在0、1、2特權(quán)級(jí)時(shí),此位不起作用。頁(yè)目錄中的這個(gè)位對(duì)其所映射的所有頁(yè)面起作用。
    2U/S用戶/超級(jí)用戶標(biāo)志。為1時(shí),允許所有特權(quán)級(jí)別的程序訪問(wèn);為0時(shí),僅允許特權(quán)級(jí)為0、1、2的程序訪問(wèn)。頁(yè)目錄中的這個(gè)位對(duì)其所映射的所有頁(yè)面起作用。

    所以,根據(jù)上表,可以知道7~10行中的“+7”表示:頁(yè)表存在,可讀可寫(xiě),允許所有特權(quán)級(jí)別的程序訪問(wèn)。

    填寫(xiě)后示意圖如下:

    movl $pg3+4092,%edimovl $0xfff007,%eax std # 設(shè)置方向位DF=1 1: stosl # Store EAX at address ES:EDIsubl $0x1000,%eax # 更新下一個(gè)表項(xiàng)的值,因?yàn)橐粋€(gè)表項(xiàng)對(duì)應(yīng) 0x1000B 的內(nèi)存,所以要把頁(yè)基址減去0x1000jge 1b # 用于有符號(hào)數(shù)大小的比較,eax 大于等于 0x1000 則跳轉(zhuǎn)到1處

    以上代碼的目的是填寫(xiě)4個(gè)頁(yè)表。

    頁(yè)表項(xiàng)的格式如下圖,0、1、2比特位的含義見(jiàn)前文的表格。

    movl $pg3+4092,%edi

    一張頁(yè)表最多可以容納1024個(gè)表項(xiàng),每項(xiàng)占4個(gè)字節(jié)。下圖左邊是表項(xiàng)的序號(hào),從0到1023,右邊是偏移地址(= 序號(hào)*4),4092是最后一個(gè)表項(xiàng)的偏移地址。

    上面的代碼表示把頁(yè)表3(最后一個(gè)頁(yè)表)的最后一項(xiàng)的地址傳入edi. 作者的意圖是從最后一個(gè)表項(xiàng)開(kāi)始,倒著填寫(xiě),直到填完頁(yè)表0的第0個(gè)表項(xiàng)。

    movl $0xfff007,%eax中的0xfff007是頁(yè)表3的最后一項(xiàng)的值,“7”就不用再解釋了,解釋一下為什么是0xfff000:

    頁(yè)表的每一項(xiàng)對(duì)應(yīng)4KB(2^12=4K)的內(nèi)存,一個(gè)頁(yè)表有1024(=1K)項(xiàng),共對(duì)應(yīng)4KB*1K=4MB的內(nèi)存。代碼中安排了4個(gè)頁(yè)表,即共可以映射4*4MB=16M內(nèi)存。

    16M - 4K = 0xFFF000

    或者:

    16M - 1 = 0x1000000-1 = 0xFFFFFF

    0xFFFFFF & 0xFFFFF000 = 0xFFF000

    jge 用于有符號(hào)數(shù)大小的比較,當(dāng) DEST(這里是eax) 大于等于 SRC(這里是0x1000) 則跳轉(zhuǎn)。當(dāng) eax=0x1007時(shí),eax>=0x1000,跳轉(zhuǎn)之后 eax=0x0007,這時(shí)候條件不再成立,則結(jié)束跳轉(zhuǎn)。所以,最后填寫(xiě)的表項(xiàng)值是 0x0007。

    xorl %eax,%eax /* pg_dir is at 0x0000 */movl %eax,%cr3 # 把頁(yè)目錄的物理地址寫(xiě)入CR3movl %cr0,%eaxorl $0x80000000,%eaxmovl %eax,%cr0 #以上三行使 CR0 的 PG=1, 開(kāi)啟分頁(yè)機(jī)制ret

    CR3寄存器的格式如下:

    從movl %eax,%cr0執(zhí)行后,段部件產(chǎn)生的地址就不再被看成物理地址,而是要送往頁(yè)部件進(jìn)行變換,以得到真正的物理地址。

    注意,現(xiàn)在內(nèi)核工作在分頁(yè)機(jī)制的一個(gè)特殊情況下,線性地址和經(jīng)過(guò)頁(yè)部件轉(zhuǎn)換后的物 理地址相同,這是作者精心安排的。

    最后的ret指令有2個(gè)作用。

  • 在改變分頁(yè)處理標(biāo)志后要求使用轉(zhuǎn)移指令刷新預(yù)取指令隊(duì)列,這里用的是返回指令ret。

  • 將之前壓入棧中的 main() 程序入口地址彈出,并跳轉(zhuǎn)到 init/main.c 程序去運(yùn)行。

    ?

  • 本程序到這里就分析結(jié)束了。

    參考資料

    《Linux內(nèi)核完全剖析》(趙炯,機(jī)械工業(yè)出版社,2006)

    與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

    總結(jié)

    以上是生活随笔為你收集整理的head.s 分析——Linux-0.11 学习笔记(三)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    欧美在线视频不卡 | 91中文字幕在线观看 | 亚洲视频精选 | 国产高清 不卡 | 91黄色免费看 | 色噜噜狠狠狠狠色综合 | av在线免费播放网站 | 中文字幕在线观看免费高清完整版 | 在线看成人| 成人免费网视频 | 中文字幕资源在线 | 亚洲精品高清在线观看 | 国产第一页福利影院 | 欧美久久综合 | 韩国在线视频一区 | 国产99久久久精品 | 欧美大片在线看免费观看 | 日本三级在线观看中文字 | 国产专区欧美专区 | 国产色综合 | 中文字幕超清在线免费 | 黄色软件在线观看 | 久久精选视频 | 蜜桃视频色 | 国偷自产视频一区二区久 | 高清不卡一区二区在线 | 伊人婷婷在线 | 成人a视频 | 国产三级午夜理伦三级 | 五月丁香| 日韩手机视频 | 夜夜骑天天操 | 亚洲日本韩国一区二区 | 天天综合视频在线观看 | 日韩中文字幕在线观看 | 蜜桃av观看 | 黄色影院在线播放 | 日本高清中文字幕有码在线 | 日韩电影精品 | 日本一区二区三区视频在线播放 | 青青看片 | 一级理论片在线观看 | 婷婷九月激情 | 久久免费电影 | 日韩一三区 | 一区二区三区污 | 日韩成人免费在线电影 | 亚洲一级影院 | 精品女同一区二区三区在线观看 | 在线免费黄网站 | 一区二区三区 亚洲 | 亚洲国产欧美在线人成大黄瓜 | 国产香蕉97碰碰久久人人 | 国产欧美高清 | 亚洲精品免费在线观看视频 | 中文字幕中文字幕中文字幕 | 国产无套精品久久久久久 | 精品中文字幕在线播放 | 久久99国产精品久久99 | 国产无套视频 | 粉嫩av一区二区三区四区五区 | 黄网在线免费观看 | 在线观看视频一区二区三区 | 97国产精品免费 | 欧美日韩综合在线 | 九九久久在线看 | 视频一区二区精品 | 人人躁 | 欧美午夜a| 亚洲精品88欧美一区二区 | 亚洲乱码国产乱码精品天美传媒 | 日韩二三区| 日韩在线观看一区 | 亚洲精品国产品国语在线 | 五月婷婷丁香网 | 69亚洲视频 | 国产福利在线不卡 | 亚洲最新av网址 | 天天搞夜夜骑 | 久久久www成人免费毛片麻豆 | 中文字幕999| 国产 日韩 在线 亚洲 字幕 中文 | av中文字幕不卡 | 国产一级精品绿帽视频 | 日韩伦理一区二区三区av在线 | 中文字幕丝袜美腿 | 美女网站色免费 | 国产成人在线观看 | 国产精品免费高清 | 天天操天天色天天射 | 日韩欧美视频在线免费观看 | 国产成人一区二区三区 | 日韩精品一区电影 | 亚洲精品白浆高清久久久久久 | 欧美日韩亚洲在线观看 | 久久夜色精品国产欧美乱 | 中文字幕在线专区 | а天堂中文最新一区二区三区 | 超碰在线97免费 | 美女网色 | www.久久免费 | 天天干天天操天天 | 久久综合欧美精品亚洲一区 | 狠狠狠狠狠狠狠狠 | 久久另类小说 | 狠狠干天天操 | 欧美成人xxxxx| 激情 婷婷| 久久超级碰视频 | 欧美 日韩 国产 中文字幕 | 999精品| 亚洲精品网站 | 人人艹人人| 国产精品1区2区3区 久久免费视频7 | 欧美精品在线观看免费 | 麻花豆传媒mv在线观看 | av成人动漫在线观看 | 99综合久久 | 欧美99精品 | 精品国产乱码 | 92国产精品久久久久首页 | 999久久国精品免费观看网站 | 欧美日韩国产精品一区二区三区 | 在线探花 | 久久夜视频 | 久热电影 | 国产在线自| 在线黄色免费av | 午夜精品一区二区三区在线观看 | 国产精品久久久久久久99 | 五月天久久综合网 | 日韩欧美在线一区 | 免费 在线 中文 日本 | 最近av在线 | 制服丝袜欧美 | 日韩二区在线播放 | 成 人 黄 色 视频 免费观看 | 免费99精品国产自在在线 | 91桃色在线免费观看 | 色妞色视频一区二区三区四区 | 又黄又爽又刺激的视频 | 亚洲专区在线视频 | 国产一级片观看 | 国产91精品久久久久 | 香蕉视频在线观看免费 | 成人动态视频 | 国外调教视频网站 | 激情av资源 | 久久99亚洲精品久久久久 | 一二三精品视频 | 免费开视频 | 美女黄视频免费看 | 中文字幕av全部资源www中文字幕在线观看 | 日韩精品一区二区三区免费视频观看 | 人人爽影院 | 九九日九九操 | 国产精品观看在线亚洲人成网 | 日批在线看| 日韩天天综合 | 婷婷综合五月 | 久久国产精品99精国产 | 国内精品久久久久久久久久清纯 | 天天射天天干天天爽 | 一区二区三区高清在线 | 久久久久久久久久久久久久av | 亚洲毛片久久 | 人人操日日干 | 国产成人av在线影院 | 伊人网站 | 日b视频在线观看网址 | 天天射天天干天天插 | 综合网伊人 | 又黄又爽又刺激视频 | 日本在线成人 | 亚洲一区二区高潮无套美女 | 久久999精品 | 一区二区三区手机在线观看 | 免费av网站在线 | 久久视频免费 | 不卡的av电影 | 国产91精品久久久久久 | 视频一区二区国产 | 日韩在线视频免费看 | 日韩在线激情 | 99色在线观看 | 波多野结衣视频在线 | 操操操日日| 午夜91在线 | 国产91精品一区二区麻豆亚洲 | 97超碰在线免费观看 | 欧美一级黄大片 | 国产首页| 色香蕉在线 | 国产高清精品在线观看 | 中文字幕一区二区三区乱码不卡 | 中文字幕在线播放一区二区 | 亚洲综合在线五月天 | av一本久道久久波多野结衣 | 最新成人av | 免费午夜视频在线观看 | 欧美激情精品久久久久久变态 | 国产亚洲精品美女久久 | 91亚洲精品久久久久图片蜜桃 | 日日夜夜免费精品视频 | 午夜在线免费观看视频 | 日韩一区在线播放 | 国产美女在线精品免费观看 | 国产人成看黄久久久久久久久 | 日本不卡一区二区三区在线观看 | 日韩在线资源 | 在线欧美最极品的av | 久久国产热 | 日本久久精品 | 亚洲精品在线免费观看视频 | 欧美国产日韩一区二区三区 | 欧美午夜一区二区福利视频 | 久久成年人网站 | 麻豆一区二区三区视频 | 亚洲精品成人av在线 | 人人干狠狠操 | 久久这里只有精品久久 | 亚洲高清视频一区二区三区 | 97视频一区 | 草久久久久久久 | 日韩精品一卡 | 免费日韩av片 | 在线播放视频一区 | 99r精品视频在线观看 | 国产精品毛片 | 国产一区二区在线视频观看 | 日韩欧美视频一区二区三区 | 九九九免费视频 | 国产福利网站 | 亚洲视频 视频在线 | 欧美精彩视频 | 久草精品视频在线观看 | 日韩欧美一级二级 | 欧美视频日韩视频 | 98超碰人人 | 98涩涩国产露脸精品国产网 | 国偷自产中文字幕亚洲手机在线 | 久在线| 91网免费看 | 国产成人精品在线播放 | 国产二区视频在线观看 | 日日草天天干 | 色综合久久中文综合久久牛 | 亚洲区视频在线观看 | 永久精品视频 | 日日操日日 | 精品久久久久久亚洲 | 日韩黄色av网站 | 免费视频成人 | 日日摸日日碰 | 91精品久久久久久久久久久久久 | 九色精品免费永久在线 | 超碰com| 久久精品一区二区 | 亚洲视频中文 | 日韩av在线高清 | 在线不卡a | 亚州国产精品久久久 | 亚洲欧洲中文日韩久久av乱码 | 激情喷水 | 在线播放一区 | 天天做天天射 | www.成人sex| 色国产精品一区在线观看 | 四虎影视成人精品国库在线观看 | 国产精品免费观看在线 | 日韩欧美高清在线观看 | 天天摸日日操 | 国模吧一区| 人人添人人澡人人澡人人人爽 | 狠狠狠色丁香婷婷综合激情 | 久草在线手机观看 | 91亚·色 | 国产精品美女久久久久久久久久久 | 日韩精选在线观看 | 亚洲国产精品500在线观看 | 亚洲va男人天堂 | 亚洲精品免费在线视频 | 偷拍精品一区二区三区 | 亚洲一区二区三区在线看 | 24小时日本在线www免费的 | 精品国产色 | 草久热 | 91麻豆精品国产91久久久无需广告 | 午夜精品久久久久久久久久 | 久久96国产精品久久99漫画 | 91久久爱热色涩涩 | 欧洲一区二区三区精品 | 色橹橹欧美在线观看视频高清 | 国产高清视频免费观看 | 欧美性天天 | av丁香花 | 久久精品麻豆 | 91精品视屏 | 亚洲国产精品成人女人久久 | 国产精品国产毛片 | 男女啪啪视屏 | 又黄又刺激又爽的视频 | 国产精品大片在线观看 | av成人动漫在线观看 | 99产精品成人啪免费网站 | av不卡在线看 | 日韩欧美视频一区 | 中文字幕在线国产精品 | 亚洲va欧美va人人爽 | 五月天精品视频 | 国产99久久99热这里精品5 | 久久精品一区二区三区国产主播 | 五月开心网 | 久草精品视频 | 中文字幕中文字幕在线一区 | 免费久草视频 | 亚洲春色综合另类校园电影 | 亚洲免费在线 | 黄色一级免费网站 | 日韩黄色免费在线观看 | 天天操操 | 成人性生爱a∨ | 狠狠伊人 | 日韩欧美观看 | 国产日韩欧美在线观看 | 久草国产精品 | 亚洲天堂网站视频 | 国产美女被啪进深处喷白浆视频 | 免费日韩一区二区 | 久久激情视频 久久 | 亚洲春色综合另类校园电影 | 久久午夜精品视频 | 亚洲蜜桃在线 | 国产精品入口麻豆www | 丁香5月婷婷 | 日本三级人妇 | 中文字幕在线日亚洲9 | www在线免费观看 | 免费精品国产va自在自线 | 超碰在线个人 | 射射射av| 五月婷婷六月丁香在线观看 | 九九热在线精品 | 激情久久综合 | 波多野结衣亚洲一区二区 | 国产一级免费片 | 久草在线观 | 81国产精品久久久久久久久久 | 麻豆国产在线播放 | 日本三级吹潮在线 | 最新av观看| 国产精品免费看久久久8精臀av | 国产视频在线观看一区二区 | 亚洲日本成人 | 91精品国产高清自在线观看 | 成人免费看黄 | 国产成人精品一区二区三区网站观看 | 亚洲精品国产电影 | 三级黄在线 | 视频一区二区三区视频 | 免费毛片一区二区三区久久久 | 97在线看 | 免费在线激情电影 | 久久久午夜精品理论片中文字幕 | 国产精品1000| 免费三级影片 | 久草视频播放 | 精品久久久久久亚洲 | 久久资源在线 | 国产不卡免费视频 | 成人午夜剧场在线观看 | 国产1区2区3区精品美女 | 在线看v片 | 成人在线视频一区 | 久久综合福利 | 精品一区精品二区高清 | 国产四虎影院 | 国产高清视频在线免费观看 | 国产精品自产拍在线观看 | 色噜噜狠狠狠狠色综合久不 | 久久亚洲精品电影 | 亚洲成av人片在线观看香蕉 | 日韩av图片 | 欧美a影视 | 国产一区成人在线 | 婷婷色在线资源 | 国产又粗又猛又爽 | 国产综合片 | 在线观看免费黄视频 | 美女激情影院 | 色网站在线看 | 五月天中文在线 | 99热在线网站 | 婷婷久久一区 | 三级av在线| 午夜精品久久久 | 亚洲精品在线视频网站 | 亚洲国产精品第一区二区 | 亚洲三级黄 | 免费a现在观看 | 日韩资源在线观看 | 81国产精品久久久久久久久久 | 免费看污网站 | 日本午夜在线亚洲.国产 | 2022久久国产露脸精品国产 | 不卡精品视频 | 在线日韩亚洲 | 婷婷丁香导航 | 久久精品一区二区三区国产主播 | 久久中文字幕导航 | 免费观看福利视频 | 亚洲精品免费在线观看 | 亚洲视频综合 | 亚洲成色 | 国产成人精品亚洲a | 国产在线观看免费观看 | 四虎免费在线观看视频 | 91色偷偷| 久久久久久久国产精品影院 | 麻豆免费看片 | 国产一区精品在线 | 韩国中文三级 | 国产视频精品在线 | 人人狠狠综合久久亚洲 | 国产一级电影免费观看 | 久草在线91 | 国产四虎影院 | 欧美色图另类 | 精品久久久久久亚洲综合网 | 亚洲精品免费视频 | 在线国产激情视频 | 在线观看 国产 | 日韩欧美视频在线播放 | 狠狠躁夜夜躁人人爽视频 | 97超碰人人网 | 欧美极度另类性三渗透 | 国产精品11 | 91福利试看 | 国产亚洲视频在线 | 久久五月婷婷丁香社区 | 美女免费视频一区 | 亚洲午夜av久久乱码 | 国产亚洲一级高清 | 五月婷婷毛片 | 91亚洲永久精品 | 日韩激情在线 | 九九九九色 | 久久久五月天 | 亚洲国产精彩中文乱码av | 国际av在线 | 亚洲激情| 欧美成人在线免费 | 精品国产亚洲一区二区麻豆 | 亚洲专区免费观看 | 成年人视频在线 | 日韩高清免费电影 | 五月婷婷一区二区三区 | 国产高清不卡 | 成人观看| 成人国产亚洲 | 999色视频 | 国产精品系列在线播放 | 亚洲综合欧美激情 | 婷婷在线播放 | 亚洲一区在线看 | 亚洲不卡av一区二区三区 | 夜夜夜| 欧美精品在线观看免费 | 国产一级二级在线播放 | 日本高清xxxx| 久久国产高清视频 | 国产精品久久久久久久久久久久冷 | 正在播放国产精品 | 欧美a级片免费看 | 成人免费观看完整版电影 | 国产精品成人一区二区 | 亚洲日日射 | 久久久精品久久日韩一区综合 | 99色人| 亚洲首页 | 特级西西人体444是什么意思 | 黄色影院在线免费观看 | 99精品热视频 | 国产美腿白丝袜足在线av | 伊香蕉大综综综合久久啪 | 亚洲高清视频一区二区三区 | 美腿丝袜一区二区三区 | 国内精品久久久久久久久久清纯 | 国内精品久久久久影院优 | 三级av小说 | 欧美做受高潮电影o | 国内精品免费久久影院 | 在线成人一区二区 | 精品一区二区久久久久久久网站 | 97超碰人人| 美国三级黄色大片 | 国产精品日韩久久久久 | 三上悠亚在线免费 | 手机成人在线 | 蜜臀av性久久久久av蜜臀妖精 | 亚洲 欧美 综合 在线 精品 | 超碰.com| 国产精品永久免费观看 | 国产精品久久久久一区二区三区共 | 亚洲一区二区三区四区精品 | a久久免费视频 | 精品久久久久久亚洲综合网站 | 免费午夜网站 | 激情欧美国产 | av亚洲产国偷v产偷v自拍小说 | 国产精品久久久久久久久毛片 | 草免费视频 | 亚洲国产精品电影在线观看 | 亚洲国产资源 | 久久不卡国产精品一区二区 | 久久久久免费观看 | 日韩高清免费观看 | 97国产电影 | 亚洲免费av片 | 亚洲精品午夜久久久 | 久久精品视频在线观看 | 欧美激情精品久久久久久免费 | 久久久久久福利 | 天天干婷婷 | 91视频免费视频 | 国产精品永久久久久久久www | 中文字幕av免费观看 | 中文字幕免费高清在线 | 色综合久久久久网 | 久久久久亚洲精品成人网小说 | 国产精品视频永久免费播放 | 日日夜夜精品视频天天综合网 | 国产高清区 | 成人av资源| 成人午夜精品 | 一区二区三区免费在线观看视频 | 91亚洲精品国偷拍自产在线观看 | 伊人网综合在线观看 | 国产精品毛片一区视频播不卡 | av蜜桃在线| 亚洲午夜久久久久久久久 | 狠狠干,狠狠操 | a级片在线播放 | 7799av | 国产美女在线免费观看 | 国产人成精品一区二区三 | 国产美女免费观看 | 久久国产午夜精品理论片最新版本 | 日韩欧美综合视频 | 精品国产一区二区三区蜜臀 | 日本天天色 | 国产精品久久久电影 | 福利视频导航网址 | 精品久久久一区二区 | www.xxxx变态.com| 国产高清不卡一区二区三区 | 久草在线网址 | 91精彩视频 | 在线观看www视频 | 欧美激情综合五月色丁香小说 | 天天综合网在线观看 | 色是在线视频 | 国产又粗又猛又黄 | 日韩精品大片 | 国产va精品免费观看 | 天天弄天天操 | 久草在线电影网 | 日韩美女高潮 | 免费日韩三级 | 国产精品美女久久久久久2018 | 国产精品第一视频 | 国产成人av电影在线观看 | 91麻豆福利 | 亚洲日本va在线观看 | 亚洲国产视频直播 | 久久99视频免费观看 | 久精品视频在线观看 | 五月导航 | 91视频高清免费 | 午夜狠狠操 | 亚洲一区二区三区四区在线视频 | 日韩三级视频在线观看 | 激情开心 | 97免费在线观看 | 天天干天天做 | 日日日操 | 三三级黄色片之日韩 | 国产中文字幕在线播放 | 黄色一级免费电影 | 国产视频久久久 | 日韩欧美一区二区三区在线 | 高清av在线 | 久操久 | 黄网站www| 在线va网站 | 成人av免费电影 | 婷婷国产一区二区三区 | 久久综合影视 | 久久久官网 | 91资源在线播放 | 在线看日韩av | 在线免费高清视频 | 亚洲精品777 | 操操操天天操 | 在线日韩中文 | 亚洲精品综合久久 | 中文字幕国产一区 | 91成年人网站| h动漫中文字幕 | 九九亚洲视频 | www.色午夜,com| 五月激情五月激情 | 国产一区在线视频播放 | 中文字幕丝袜美腿 | 国产精品毛片一区 | 久久精品免视看 | 97人人爽 | 成人av高清在线 | 久操视频在线免费看 | 综合久久久久久久 | 久久艹综合 | 色婷婷88av视频一二三区 | 蜜臀av免费一区二区三区 | a级一a一级在线观看 | 久久久久久久久久伊人 | 手机在线永久免费观看av片 | www亚洲一区 | 欧美精品在线观看 | 亚洲一二三在线 | 久久美女免费视频 | 久久成人国产精品 | 亚洲成人精品在线观看 | 日韩久久影院 | 中文字幕在线免费播放 | 欧美日在线观看 | 中文字幕精品一区二区三区电影 | 久久久久久久久艹 | 中文字幕在线观看视频一区 | 成片视频免费观看 | 91av电影在线 | 97色se | 欧美日韩1区2区 | 亚洲一区二区观看 | 免费看黄色91 | 欧美日韩成人一区 | 欧美日韩中字 | 综合在线亚洲 | 91久久国产精品 | 国产成人精品免高潮在线观看 | 91久久丝袜国产露脸动漫 | 国产精品久久久久久一区二区三区 | 久久精品精品电影网 | www在线观看国产 | 91免费高清在线观看 | 最新av在线网站 | 在线免费黄网站 | 国产成人精品综合久久久久99 | 亚洲一区黄色 | 久久免费福利视频 | 免费观看www视频 | 狠狠干夜夜操 | 国产女v资源在线观看 | 国产91精品一区二区 | 四虎影视成人 | 国产aaa免费视频 | 91av免费看 | 欧美夫妻性生活电影 | 久久综合精品一区 | 婷婷六月丁 | 国产免费二区 | 在线免费观看视频一区二区三区 | 久久一区二区三区日韩 | 色视频在线观看 | 国产99久久九九精品免费 | 国产国语在线 | 天天综合狠狠精品 | 中文字幕在线视频一区二区三区 | 一区二区三区在线电影 | www久久| 亚洲一区免费在线 | 黄色成年片 | 国产精品网站一区二区三区 | 激情久久伊人 | 日韩理论电影在线观看 | 99在线观看免费视频精品观看 | 午夜视频在线观看一区 | 一级片免费在线 | 亚洲午夜久久久久久久久电影网 | 久艹在线观看视频 | 久久好看免费视频 | 91黄色视屏 | 中文字幕在线观看日本 | 色九九视频 | 精品国产伦一区二区三区 | 国产又黄又猛又粗 | 国产在线不卡一区 | 99精品国产免费久久 | 日韩中文在线播放 | 国产精品美女久久久久久网站 | 在线看v片 | 国产999在线| 日日夜夜精品免费 | 色综合天天视频在线观看 | 欧美极度另类性三渗透 | 免费毛片一区二区三区久久久 | 播五月综合 | 91免费黄视频 | 黄网站a| 亚洲欧美婷婷六月色综合 | 免费亚洲黄色 | 久久影院亚洲 | 激情片av| 久久综合久久综合九色 | 一级电影免费在线观看 | 国产乱老熟视频网88av | 国产成人精品久久亚洲高清不卡 | 99热在线看 | 狠狠婷婷 | 又黄又爽的视频在线观看网站 | 久久夜色精品国产欧美乱 | 日韩av电影中文字幕 | 女人魂免费观看 | 天堂在线视频中文网 | 亚洲精品字幕在线 | 激情视频在线观看网址 | 中文字幕国产精品一区二区 | 91视频在线免费观看 | 中文字幕视频一区 | 国产在线观 | 日本黄色一级电影 | 久久亚洲电影 | 不卡的av电影 | 天天干天天操天天 | 欧美一区二区三区在线 | 日韩一级黄色片 | 久久成人视屏 | 一区二区三区日韩在线观看 | 另类五月激情 | 69xxxx欧美| 亚洲人成网站精品片在线观看 | 97干com| 夜夜躁日日躁 | 波多野结衣精品 | 久久黄色影院 | 久久免费国产 | 国内久久看 | 操操操日日 | 成人免费91 | 国产91aaa| 久久不卡视频 | 天天干天天弄 | 91精品国产自产在线观看永久 | 国产麻豆精品免费视频 | 中文字幕在线一区二区三区 | 国产偷v国产偷∨精品视频 在线草 | 午夜精品一区二区三区在线观看 | 婷婷色婷婷 | 干综合网 | 亚洲欧美怡红院 | 久久久久久综合网天天 | 久久久久99精品成人片三人毛片 | 久久99久久久久久 | 欧美色伊人 | 午夜国产在线 | 亚洲午夜精品电影 | 日韩在线观看一区二区 | 国产性xxxx | 天堂黄色片 | 天天插狠狠插 | 99精品国产免费久久久久久下载 | 久久久久99精品国产片 | 国内精品久久久久国产 | 尤物九九久久国产精品的分类 | 国产高清在线看 | 久久久国产一区二区三区四区小说 | 久久久免费精品视频 | 国产精品毛片网 | 麻豆免费视频 | 91精品久久香蕉国产线看观看 | 亚洲va欧美va人人爽 | 天天天天天天操 | 日韩av中文在线观看 | 亚洲视频免费在线看 | 日日婷婷夜日日天干 | 欧美激情奇米色 | 精品在线视频一区 | 成人免费精品 | 欧美在线一 | 日本一区二区不卡高清 | 在线观看亚洲视频 | 久草在线视频国产 | 欧美日韩一区二区三区免费视频 | 成人动漫视频在线 | 国产原创91 | 99精品在线播放 | 国产高清精品在线 | 99久久精品一区二区成人 | 国产我不卡 | 最新av网址在线观看 | 国产亚洲精品久久久久久久久久久久 | 欧美在线观看视频一区二区 | 成年美女黄网站色大片免费看 | 一区二区理论片 | 日韩视频在线一区 | 国产69精品久久久久99 | 亚洲成a人片77777kkkk1在线观看 | 蜜臀av在线一区二区三区 | 黄色成人毛片 | 久久国产热 | 久久黄色a级片 | 色婷婷综合久久久久中文字幕1 | 国产一区二区精品久久91 | 天天做日日爱夜夜爽 | 在线成人观看 | 久草91视频| 在线观看黄色国产 | 久久精品国产亚洲精品2020 | 97超碰资源总站 | 操天天操| 日躁夜躁狠狠躁2001 | 日韩在线免费观看视频 | 在线国产中文字幕 | 黄色免费在线看 | 91精品国产自产91精品 | 美女福利视频网 | 国产欧美精品一区二区三区 | 人人爽人人干 | 国产高清成人 | 久久久久网址 | 十八岁免进欧美 | 亚洲欧美乱综合图片区小说区 | 国产精品区二区三区日本 | 女人18毛片a级毛片一区二区 | 在线v片 | av高清一区二区三区 | 国产一区二区三区久久久 | 狠狠夜夜| 久草在线中文视频 | 99久久精品国产网站 | 国产又粗又硬又爽视频 | 一区二区三区日韩在线 | 激情综合中文娱乐网 | 亚洲视频电影在线 | 999久久国精品免费观看网站 | 久久黄色片子 | 日本乱视频 | 天天搞天天干天天色 | 精品久久久久久久久久 | 日韩欧美网站 | 国产精品久久精品国产 | 激情五月五月婷婷 | 久久免费a | av 一区二区三区 | 成年人黄色免费看 | www.久久成人 | 久久r精品 | 91大神精品视频在线观看 | 91麻豆精品国产91久久久久久久久 | 夜夜操狠狠干 | 精品欧美一区二区三区久久久 | 91视频大全 | 中文字幕.av.在线 | 丁香激情婷婷 | 国产精品男女视频 | 在线性视频日韩欧美 | 最新av网址大全 | 97人人爽人人| 久久久国产影视 | 天天鲁一鲁摸一摸爽一爽 | 天天操综 | 久久成人欧美 | 91丨九色丨勾搭 | 欧美极品xxx | 黄色影院在线免费观看 | 日韩精品免费在线观看视频 | 一区二区男女 | 国产在线视频在线观看 | 成人免费中文字幕 | 右手影院亚洲欧美 | 九九国产精品视频 | 久久久久欧美精品999 | 国产视频中文字幕在线观看 | 超碰精品在线观看 | 91久久精 | 亚洲视频 在线观看 | 亚洲精品国产精品国自产 | 午夜精品久久久久久久99 | 蜜臀aⅴ国产精品久久久国产 | 国产成人av | av福利在线播放 | 在线亚洲播放 | 日韩中文在线字幕 | 久久深夜福利免费观看 | 久久久综合香蕉尹人综合网 | 国产在线观看中文字幕 | 日韩在线第一 | 天天色天天骑天天射 | 久久男女视频 | av亚洲产国偷v产偷v自拍小说 | 人人干人人添 | 午夜精品一区二区三区视频免费看 | 91精品国产自产在线观看永久 | av在线短片 | а天堂中文最新一区二区三区 | www.色午夜 | 国产精品免费高清 | 国色综合 | 国产精品久久久久久久久费观看 | 亚洲中字幕 | 欧美日韩午夜爽爽 | 91精品老司机久久一区啪 | 亚洲乱码精品 | 亚洲天天综合网 | 在线成人高清电影 | 久久久久国产成人精品亚洲午夜 | 中文字幕观看av | 91最新地址永久入口 | 最新日韩视频在线观看 | 中文在线字幕免费观看 | 人人爽人人爽人人爽人人爽 | 成人亚洲精品国产www | 在线黄色免费av | 国产精品福利在线播放 | 国产精品一区二区三区免费看 | 2021久久| 欧美精品久久久久久久免费 | 久久综合干 | 日韩二区在线观看 | av线上免费看 | 亚洲国产成人精品久久 | 久久亚洲美女 | 国内外成人在线视频 | 亚洲在线视频观看 | 久久激情五月丁香伊人 | 99高清视频有精品视频 | 九九热在线免费观看 | 91视频这里只有精品 | 超碰97在线人人 | 99免费精品视频 | av超碰免费在线 | 在线观看日韩专区 | 国产精品亚洲人在线观看 | 国产一区久久 | 日韩高清二区 | 日韩成人精品 | 国产精品对白一区二区三区 | 天天激情站 | 天天操偷偷干 | 最新中文字幕在线播放 | 国产手机在线视频 | 综合久久婷婷 | 综合国产视频 | 国产成人香蕉 | 精品国产一区二区三区四区在线观看 | 久久婷亚洲五月一区天天躁 | 一本一道久久a久久精品蜜桃 | 久久在线观看视频 | av大片免费在线观看 | 日韩有色 | 国产精品观看视频 | 99在线热播 | 五月天激情综合网 | 中文字幕乱码亚洲精品一区 | 亚洲成av人影片在线观看 | 国产三级精品三级在线观看 | av黄色影院 | 国产手机视频在线播放 | 精品99在线 | 日韩高清免费在线 | 精品视频资源站 | 99精品欧美一区二区 | 西西444www大胆高清图片 | 国产区第一页 | 国产精品亚洲片夜色在线 | 国产亚洲一区二区在线观看 | 精品国产亚洲一区二区麻豆 | 免费视频一级片 | 五月综合激情婷婷 | 亚洲精品中文字幕视频 | 亚洲成人黄色网址 | 日韩免费在线一区 | 9在线观看免费高清完整 | 天天操天天操天天操天天 | 日韩专区在线观看 | 狠狠狠狠狠操 | 日韩高清国产精品 | 久久草草热国产精品直播 | 亚洲精品www久久久久久 | 六月色丁香 | 在线观看精品视频 | 亚洲精品小视频 | 久久久精品欧美一区二区免费 | 在线之家免费在线观看电影 | 国产成人精品aaa | 久久伊人五月天 | 久草免费看 | 久久狠狠亚洲综合 | 国产精品av一区二区 |