微機(jī)接口技術(shù)第三章(2)_第1頁
微機(jī)接口技術(shù)第三章(2)_第2頁
微機(jī)接口技術(shù)第三章(2)_第3頁
微機(jī)接口技術(shù)第三章(2)_第4頁
微機(jī)接口技術(shù)第三章(2)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、微機(jī)接口技術(shù)微機(jī)接口技術(shù)微機(jī)接口技術(shù)微機(jī)接口技術(shù)第三章第三章 微處理器編程模型微處理器編程模型(3.3,3.4)(3.3,3.4)微機(jī)接口技術(shù)微機(jī)接口技術(shù)3.3 CPU工作模式微機(jī)接口技術(shù)微機(jī)接口技術(shù)CPUCPU工作工作模式模式 從從8038680386開始,開始,IntelIntel的的3232位位CPUCPU具有具有三三種種運(yùn)行模式:運(yùn)行模式:u 實(shí)模式實(shí)模式u 保護(hù)模式保護(hù)模式u 虛擬虛擬80868086模式模式微機(jī)接口技術(shù)微機(jī)接口技術(shù)實(shí)模式(實(shí)模式(RealReal modemode)特點(diǎn):特點(diǎn): 1 1、兼容、兼容80868086,尋址機(jī)制、中斷處理機(jī)制均,尋址機(jī)制、中斷處理機(jī)制均和

2、和80868086相同。相同。 2 2、只使用低、只使用低2020位地址線位地址線,尋址空間為,尋址空間為2 220 20 = = 1MB1MB地址空間。地址空間。 3 3、采用分段式內(nèi)存管理,物理地址形成為、采用分段式內(nèi)存管理,物理地址形成為1616位位“段首址:偏移段首址:偏移”。段最大為。段最大為2 216 16 = = 64KB64KB。 4 4、3232位位CPUCPU加電或者復(fù)位后處于實(shí)模式。加電或者復(fù)位后處于實(shí)模式。微機(jī)接口技術(shù)微機(jī)接口技術(shù) 5 5、不支持硬件上的多任務(wù)切換。、不支持硬件上的多任務(wù)切換。 6 6、不支持特權(quán)級(jí)。、不支持特權(quán)級(jí)。 實(shí)模式下,存儲(chǔ)器保留兩個(gè)專用區(qū):實(shí)模

3、式下,存儲(chǔ)器保留兩個(gè)專用區(qū): 1 1、初始化程序區(qū)初始化程序區(qū):FFFF0HFFFFFHFFFF0HFFFFFH,存放,存放進(jìn)入進(jìn)入ROMROM引導(dǎo)程序的一條跳轉(zhuǎn)指令。引導(dǎo)程序的一條跳轉(zhuǎn)指令。 2 2、中斷向量表區(qū)中斷向量表區(qū):00000H00000H003FFH003FFH,在,在這這1K1K字節(jié)的存儲(chǔ)空間中存放字節(jié)的存儲(chǔ)空間中存放256256個(gè)中斷服個(gè)中斷服務(wù)程序的入口地址,每個(gè)入口地址占務(wù)程序的入口地址,每個(gè)入口地址占4 4個(gè)個(gè)字節(jié),這與字節(jié),這與80868086的情形相同。的情形相同。微機(jī)接口技術(shù)微機(jī)接口技術(shù)保護(hù)模式保護(hù)模式 特點(diǎn):特點(diǎn): 1 1、支持多任務(wù)和、支持多任務(wù)和特權(quán)級(jí)特權(quán)級(jí)

4、 。 2 2、支持內(nèi)存分頁機(jī)制,提供段式和頁式、支持內(nèi)存分頁機(jī)制,提供段式和頁式內(nèi)存管理功能。內(nèi)存管理功能。 3 3、物理尋址空間高達(dá)、物理尋址空間高達(dá)2 23232 = 4GB = 4GB(80386/8048680386/80486)或)或2 236 36 = 64GB= 64GB(PentiumPentium及以上及以上CPUCPU)。)。重點(diǎn)重點(diǎn)微機(jī)接口技術(shù)微機(jī)接口技術(shù) 4 4、引入虛擬存儲(chǔ)器的概念,以擴(kuò)充編程、引入虛擬存儲(chǔ)器的概念,以擴(kuò)充編程者所使用的地址空間,段內(nèi)偏移地址者所使用的地址空間,段內(nèi)偏移地址3232位,位,每個(gè)段最大每個(gè)段最大2 23232B=4GBB=4GB,每個(gè)程序

5、最多可以,每個(gè)程序最多可以使用使用16K16K個(gè)段,理論上的虛擬地址空間為個(gè)段,理論上的虛擬地址空間為4GB4GB16K=64TB16K=64TB。 5 5、提供了一系列的保護(hù)機(jī)制,如任務(wù)地、提供了一系列的保護(hù)機(jī)制,如任務(wù)地址空間的隔離,設(shè)置特權(quán)級(jí),設(shè)置特權(quán)指址空間的隔離,設(shè)置特權(quán)級(jí),設(shè)置特權(quán)指令,進(jìn)行訪問權(quán)限令,進(jìn)行訪問權(quán)限( (如只讀、只執(zhí)行如只讀、只執(zhí)行) )及段及段限檢查等。限檢查等。微機(jī)接口技術(shù)微機(jī)接口技術(shù)虛擬虛擬80868086模式模式特點(diǎn):特點(diǎn):1 1、兼容、兼容80868086程序,又稱程序,又稱“V86V86模式模式”。2 2、V86V86模式以任務(wù)的形式在保護(hù)模式上執(zhí)模式以

6、任務(wù)的形式在保護(hù)模式上執(zhí)行。操作系統(tǒng)中有專門的行。操作系統(tǒng)中有專門的V86V86管理程序。管理程序。3 3、采用模擬的方法實(shí)現(xiàn)特權(quán)指令。、采用模擬的方法實(shí)現(xiàn)特權(quán)指令。 微機(jī)接口技術(shù)微機(jī)接口技術(shù)CPUCPU的的3 3種運(yùn)行模式種運(yùn)行模式以及切換以及切換實(shí)模式實(shí)模式保護(hù)模式保護(hù)模式V86V86模式模式ResetReset復(fù)位復(fù)位ResetReset復(fù)位、復(fù)位、修改修改CR0CR0LMSWLMSW指令、指令、修改修改CR0CR0中斷或異常中斷或異常IRETDIRETD指令、指令、任務(wù)轉(zhuǎn)換任務(wù)轉(zhuǎn)換ResetReset復(fù)位復(fù)位CPUCPU的的3 3種運(yùn)行模式及其切換種運(yùn)行模式及其切換微機(jī)接口技術(shù)微機(jī)接口

7、技術(shù)64位CPU的工作模式 IntelIntel的的EM64TEM64T技術(shù)技術(shù)中包含:中包含: 1 1、IA-32IA-32 傳統(tǒng)的模式(傳統(tǒng)的模式(Legacy ModeLegacy Mode),本質(zhì)上的,本質(zhì)上的3232位位x86x86時(shí)代的時(shí)代的IA-32IA-32模式。模式。 2 2、IA-32eIA-32el兼容模式兼容模式 允許允許6464位操作系統(tǒng)運(yùn)行基于位操作系統(tǒng)運(yùn)行基于3232位和位和1616位代碼的位代碼的程序。程序。l6464位模式位模式 EM64T EM64T技術(shù)中最為高效的模式。技術(shù)中最為高效的模式。要求要求純純6464位環(huán)境位環(huán)境的支持,包括的支持,包括6464位

8、操作系統(tǒng)和位操作系統(tǒng)和6464位應(yīng)用程序。位應(yīng)用程序。微機(jī)接口技術(shù)微機(jī)接口技術(shù)3.4 內(nèi)存管理微機(jī)接口技術(shù)微機(jī)接口技術(shù)內(nèi)存管理基礎(chǔ) 1 1、物理地址物理地址 物理地址是從微處理器引腳上輸出的物理地址是從微處理器引腳上輸出的地址信號(hào)。地址信號(hào)。 內(nèi)存中的每一個(gè)字節(jié)都有一個(gè)惟一的內(nèi)存中的每一個(gè)字節(jié)都有一個(gè)惟一的地址。地址。微機(jī)接口技術(shù)微機(jī)接口技術(shù)2 2、邏輯地址邏輯地址 邏輯地址包含邏輯地址包含段段地址地址和偏移和偏移兩部分兩部分。l1616位位CPUCPU系統(tǒng)中系統(tǒng)中: 邏輯地址為段首址的高位部分和偏移量邏輯地址為段首址的高位部分和偏移量。物理地址物理地址= =段寄存器段寄存器16+16+偏移偏

9、移量量。如邏輯地址為如邏輯地址為8000H8000H:0001H0001H則物理地址則物理地址=8000H=8000H10H+0001H=80001H10H+0001H=80001H微機(jī)接口技術(shù)微機(jī)接口技術(shù)l3232位位CPUCPU系統(tǒng)中系統(tǒng)中 邏輯地址邏輯地址,也叫虛擬地址。,也叫虛擬地址。1616位段選位段選擇符加上擇符加上3232位偏移量,總共是位偏移量,總共是4848位位地址,地址,其中段選擇符的其中段選擇符的2 2位位RPLRPL與虛擬地址的轉(zhuǎn)換與虛擬地址的轉(zhuǎn)換無關(guān),因此可以認(rèn)為虛擬地址是無關(guān),因此可以認(rèn)為虛擬地址是4646位的,位的,即即虛擬地址空間最大為虛擬地址空間最大為2 24

10、646字節(jié)。字節(jié)。如如3232位位CPUCPU中中DS:EBXDS:EBX就是一個(gè)虛擬地址就是一個(gè)虛擬地址。TIselectoroffsetINDEXRPL微機(jī)接口技術(shù)微機(jī)接口技術(shù)3、線性地址線性地址 內(nèi)存分段管理部件將虛擬地址轉(zhuǎn)換為線內(nèi)存分段管理部件將虛擬地址轉(zhuǎn)換為線性地址。性地址。 同一個(gè)線性地址得到的物理地址可以不同一個(gè)線性地址得到的物理地址可以不同。同。 3232位位CPUCPU系統(tǒng)中段基址和偏移量都是系統(tǒng)中段基址和偏移量都是3232位位的,所以線性地址是的,所以線性地址是3232位的。線性地址空位的。線性地址空間的范圍是間的范圍是2 23232=4GB=4GB,即,即00000000

11、H00000000HFFFFFFFFHFFFFFFFFH。微機(jī)接口技術(shù)微機(jī)接口技術(shù)4、物理地址、線性地址和邏輯地址轉(zhuǎn)換 給定一個(gè)邏輯地址,其物理地址給定一個(gè)邏輯地址,其物理地址是是唯唯一的一的,給定,給定一個(gè)物理地址可能對(duì)應(yīng)到多個(gè)一個(gè)物理地址可能對(duì)應(yīng)到多個(gè)邏輯地址上。邏輯地址上。例如例如1616位位CPUCPU系統(tǒng)中,系統(tǒng)中,已知邏輯地址已知邏輯地址317FH:2B83H317FH:2B83H,求物理地址。,求物理地址。3180H:2B73H3180H:2B73H的物理地址的物理地址呢?呢?解答:解答: 段首址段首址 = 317FH = 317FH 偏移偏移 = 2B83H = 2B83H 段

12、基址段基址 = 317FH = 317FH16 = 317F0H16 = 317F0H 物理地址物理地址 = = 段基址段基址 + + 偏移偏移 = 317F0H + = 317F0H + 2B83H = 34373H2B83H = 34373H微機(jī)接口技術(shù)微機(jī)接口技術(shù)3232位位CPUCPU系統(tǒng)中三者的轉(zhuǎn)換系統(tǒng)中三者的轉(zhuǎn)換18段式地址變換段式地址變換段寄存器的段寄存器的152152位位偏移量偏移量45 32 45 32 31 031 0段基址段基址 段描段描述符述符3232位線性地址位線性地址物理物理地址地址虛擬虛擬地址地址段基址段基址不開啟分頁部件的情況下,線性地址就是物理地址。不開啟分頁

13、部件的情況下,線性地址就是物理地址。微機(jī)接口技術(shù)微機(jī)接口技術(shù)例例 假定虛擬地址由段描述符假定虛擬地址由段描述符0100H0100H和偏移量和偏移量00002000H00002000H組成,禁止分頁。如描述符中組成,禁止分頁。如描述符中讀出的段基址為讀出的段基址為00030000H00030000H,那操作數(shù)的,那操作數(shù)的物理地址是多少?物理地址是多少?虛擬地址虛擬地址= =選擇符:偏移量選擇符:偏移量 =0100=0100:00002000H00002000H線性地址線性地址= =段基址段基址+ +偏移量偏移量 =00030000H+00002000H=00030000H+00002000H

14、=00032000H =00032000H此時(shí)禁止分頁,故線性地址就是物理地址。此時(shí)禁止分頁,故線性地址就是物理地址。微機(jī)接口技術(shù)微機(jī)接口技術(shù)基本數(shù)據(jù)類型 1 1、字節(jié)字節(jié) 字節(jié)(字節(jié)(B Byteyte)包含包含8 8個(gè)二進(jìn)制位個(gè)二進(jìn)制位。最高最高位簡寫為位簡寫為MSBMSB,即第,即第7 7位位。最低位簡寫為。最低位簡寫為LSBLSB,即第,即第0 0位位。微機(jī)接口技術(shù)微機(jī)接口技術(shù) 2 2、字字 不同的系列機(jī)關(guān)于字(不同的系列機(jī)關(guān)于字(WordWord)的定義)的定義不同不同,在,在Intel 80 x86Intel 80 x86系列中系列中1 1個(gè)字包括個(gè)字包括2 2字節(jié),也就是字節(jié),也

15、就是1616位二進(jìn)制。這兩個(gè)字節(jié)分位二進(jìn)制。這兩個(gè)字節(jié)分別稱為高字節(jié)(別稱為高字節(jié)(High Order ByteHigh Order Byte)和低)和低字節(jié)(字節(jié)(Low Order ByteLow Order Byte)。)。MSBMSB為第為第1515位位,LSBLSB為第為第0 0位。位。微機(jī)接口技術(shù)微機(jī)接口技術(shù) 3 3、雙字雙字 1 1個(gè)雙字包括兩個(gè)字,或者個(gè)雙字包括兩個(gè)字,或者4 4字節(jié),也字節(jié),也就是就是3232個(gè)二進(jìn)制位。這兩個(gè)字分別稱為高個(gè)二進(jìn)制位。這兩個(gè)字分別稱為高字(字(High Order WordHigh Order Word)和低字()和低字(Low Low Or

16、der WordOrder Word)。)。微機(jī)接口技術(shù)微機(jī)接口技術(shù)數(shù)據(jù)的存儲(chǔ)順序l大端方案(大端方案(Big EndianBig Endian) 高字節(jié)和高字存儲(chǔ)在低地址高字節(jié)和高字存儲(chǔ)在低地址,低字節(jié),低字節(jié)和低字存儲(chǔ)在高地址。和低字存儲(chǔ)在高地址。 SPARC SPARC、PowerPCPowerPC、PARCPARC等。等。l小端方案(小端方案(Little EndianLittle Endian) 低字節(jié)在低地址,高字節(jié)在高地址。低字節(jié)在低地址,高字節(jié)在高地址。IntelIntel系列系列CPUCPU。微機(jī)接口技術(shù)微機(jī)接口技術(shù)Intel 80X86系列CPU 1 1、字的存儲(chǔ)順序字的存

17、儲(chǔ)順序微機(jī)接口技術(shù)微機(jī)接口技術(shù) 2 2、雙字的存儲(chǔ)順序雙字的存儲(chǔ)順序微機(jī)接口技術(shù)微機(jī)接口技術(shù)3 3、地址對(duì)齊地址對(duì)齊l未對(duì)準(zhǔn)字:地址不是未對(duì)準(zhǔn)字:地址不是2 2的倍數(shù)。的倍數(shù)。l對(duì)準(zhǔn)字:地址是對(duì)準(zhǔn)字:地址是2 2的倍數(shù)。的倍數(shù)。l未對(duì)準(zhǔn)雙字:地址不是未對(duì)準(zhǔn)雙字:地址不是4 4的倍數(shù)。的倍數(shù)。l對(duì)準(zhǔn)雙字:地址是對(duì)準(zhǔn)雙字:地址是4 4的倍數(shù)。的倍數(shù)。 編程時(shí)應(yīng)盡量使用對(duì)準(zhǔn)字和對(duì)準(zhǔn)雙字。編程時(shí)應(yīng)盡量使用對(duì)準(zhǔn)字和對(duì)準(zhǔn)雙字。 如圖如圖3-203-20中讀取中讀取地址為地址為41001H41001H的字,結(jié)果的字,結(jié)果為為D660HD660H,為未對(duì)準(zhǔn)字。,為未對(duì)準(zhǔn)字。微機(jī)接口技術(shù)微機(jī)接口技術(shù)描述符描述符

18、 描述符是用以管理描述符是用以管理64TB64TB虛擬存儲(chǔ)地址虛擬存儲(chǔ)地址空間分段的基本元素。一個(gè)描述符對(duì)應(yīng)虛空間分段的基本元素。一個(gè)描述符對(duì)應(yīng)虛擬地址空間中的一個(gè)存儲(chǔ)段。擬地址空間中的一個(gè)存儲(chǔ)段。 描述符包括描述符包括段描述符、系統(tǒng)段描述符、段描述符、系統(tǒng)段描述符、局部描述符、調(diào)用門描述符、任務(wù)狀態(tài)段局部描述符、調(diào)用門描述符、任務(wù)狀態(tài)段描述符,以及任務(wù)門描述符等。描述符,以及任務(wù)門描述符等。微機(jī)接口技術(shù)微機(jī)接口技術(shù)段描述符段描述符 段描述符用于描述段描述符用于描述代碼段、數(shù)據(jù)段和代碼段、數(shù)據(jù)段和堆棧段堆棧段。 段描述符段描述符位于位于GDTGDT或或LDTLDT中,占中,占8 8字節(jié)字節(jié),由

19、以下幾個(gè)部分組成:段基址(由以下幾個(gè)部分組成:段基址(3232位)、位)、限長(限長(2020位)、訪問權(quán)限(位)、訪問權(quán)限(8 8位)和屬性位)和屬性(4 4位)。位)。 29段描述符段描述符D7 D7 D0 D0段界限段界限 7070段界限段界限 158158基址基址 7070基址基址 158158基址基址 23162316基址基址 31243124TYPETYPES SAVLAVLDPLDPLP PG GD/BD/B0 0段界限段界限 191619160 01 12 23 34 45 56 67 730段描述符第段描述符第5 5字節(jié)訪問字節(jié)訪問權(quán)限,權(quán)限,非系統(tǒng)段(代碼段、數(shù)非系統(tǒng)段(代

20、碼段、數(shù)據(jù)段、堆棧段)的格式:據(jù)段、堆棧段)的格式:A AW WR REDEDC CE=0E=0E=1E=1S=1S=1DPLDPLP PD7 D0D7 D0存在位存在位1 1:裝入內(nèi)存:裝入內(nèi)存0 0:不在內(nèi)存:不在內(nèi)存特權(quán)位特權(quán)位S=1S=1是非系統(tǒng)段:數(shù)據(jù)段或者代碼段是非系統(tǒng)段:數(shù)據(jù)段或者代碼段S=0S=0是系統(tǒng)段描述符是系統(tǒng)段描述符代碼段標(biāo)代碼段標(biāo)志志數(shù)據(jù)段或者數(shù)據(jù)段或者堆棧段標(biāo)志堆棧段標(biāo)志一致位一致位0 0:非一致:非一致1 1:一致:一致可讀位可讀位訪問位訪問位擴(kuò)展方向位擴(kuò)展方向位1 1:向下擴(kuò)展:向下擴(kuò)展0 0:向上擴(kuò)展:向上擴(kuò)展 可寫位可寫位 31D7 D0D7 D0AVLAV

21、LG GD/BD/B0 0段界限段界限 19161916用戶用戶/ /操作系統(tǒng)可用位操作系統(tǒng)可用位 D/BD/B位,系統(tǒng)段不用這位位,系統(tǒng)段不用這位粒度位粒度位 ,=1=1以頁為單位,以頁為單位,=0=0以字以字節(jié)為單位節(jié)為單位D/BD/B位位代碼段代碼段(D(D位位) )D=1 D=1 使用使用3232位操作系統(tǒng)和位操作系統(tǒng)和3232位尋址方式位尋址方式D=0 D=0 使用使用1616位操作系統(tǒng)和位操作系統(tǒng)和1616位尋址方式位尋址方式 數(shù)據(jù)段數(shù)據(jù)段(B(B位位) )B=1 B=1 堆棧使用堆棧使用ESPESP寄存器,上限為寄存器,上限為FFFFFFFFHFFFFFFFFH B=0 B=0

22、堆棧使用堆棧使用SPSP寄存器,上限為寄存器,上限為FFFFHFFFFH 段描述符中的第段描述符中的第6 6字節(jié):四位屬性字節(jié):四位屬性思考:如何知道該段為代碼段或數(shù)據(jù)段?思考:如何知道該段為代碼段或數(shù)據(jù)段?微機(jī)接口技術(shù)微機(jī)接口技術(shù) P3-7P3-7例子。分析例子。分析CS=001BHCS=001BH。SEGMENT LIMIT 15 . 0SEGMENT BASE 15 . 0 BASE 23.16 BASE 31.24GX0LIMIT19.16PDPLSTYPEA0347AVL0231615872431微機(jī)接口技術(shù)微機(jī)接口技術(shù)已知已知Windows XPWindows XP中各段寄存器及段

23、描述符的值中各段寄存器及段描述符的值如下,分析如下,分析CSCS對(duì)應(yīng)的段描述符屬性。對(duì)應(yīng)的段描述符屬性。 CS=001B DS=0023 ES=0023 SS=0023 FS=0030 CS=001B DS=0023 ES=0023 SS=0023 FS=0030 GS=0000GS=0000 GDTbase=E003F000 Limit=03FF GDTbase=E003F000 Limit=03FF E003F000 00 00 00 00 00 00 00 00-FF FF 00 00 00 9B CF 00 E003F000 00 00 00 00 00 00 00 00-FF FF

24、00 00 00 9B CF 00 E003F010 FF FF 00 00 00 93 CF 00-FF FF 00 00 00 FB CF 00 E003F010 FF FF 00 00 00 93 CF 00-FF FF 00 00 00 FB CF 00 E003F020 FF FF 00 00 00 F3 CF 00-AB 20 00 20 04 8B 00 80 E003F020 FF FF 00 00 00 F3 CF 00-AB 20 00 20 04 8B 00 80 E003F030 01 00 00 F0 DF 93 C0 FF-FF 0F 00 00 00 F3 40

25、00 E003F030 01 00 00 F0 DF 93 C0 FF-FF 0F 00 00 00 F3 40 00 E003F040 FF FF 00 04 00 F2 00 00-00 00 00 00 00 00 00 00 E003F040 FF FF 00 04 00 F2 00 00-00 00 00 00 00 00 00 00 微機(jī)接口技術(shù)微機(jī)接口技術(shù) 選擇符選擇符 類型類型 段基址段基址 結(jié)束地址結(jié)束地址 DPL DPL 0008 Code32 00000000 FFFFFFFF 0 P RE 0008 Code32 00000000 FFFFFFFF 0 P RE 001

26、0 Data32 00000000 FFFFFFFF 0 P RW 0010 Data32 00000000 FFFFFFFF 0 P RW 001B Code32 00000000 FFFFFFFF 3 P RE 001B Code32 00000000 FFFFFFFF 3 P RE 0023 Data32 00000000 FFFFFFFF 3 P RW 0023 Data32 00000000 FFFFFFFF 3 P RW 0028 TSS32 80042000 000020AB 0 P B 0028 TSS32 80042000 000020AB 0 P B 0030 Data32

27、 FFDFF000 00001FFF 0 P RW 0030 Data32 FFDFF000 00001FFF 0 P RW 003B Data32 00000000 00000FFF 3 P RW 003B Data32 00000000 00000FFF 3 P RW 0043 Data16 00000400 0000FFFF 3 P RW 0043 Data16 00000400 0000FFFF 3 P RW 0048 Reserved 00000000 00000000 0 NP 0048 Reserved 00000000 00000000 0 NP 微機(jī)接口技術(shù)微機(jī)接口技術(shù)內(nèi)容內(nèi)

28、容 二進(jìn)制二進(jìn)制7 70 0FFFF111111112111111112+0+0限長(位限長(位7-07-0)FFFF111111112111111112+1+1限長(位限長(位15-815-8)0000000000002000000002+2+2段基址(位段基址(位7-07-0)0000000000002000000002+3+3段基址(位段基址(位15-815-8)0000000000002000000002+4+4段基址(位段基址(位23-1623-16)FBFB111110112111110112+5+5P DPL SP DPL STYPETYPE A ACFCF11001111211

29、0011112+6+6GD0AVLGD0AVL限長(位限長(位19-1619-16)0000000000002000000002+7+7段基址(位段基址(位31-2431-24)微機(jī)接口技術(shù)微機(jī)接口技術(shù) 分析分析CSCS段描述符得:段描述符得: 段基址(位段基址(位31310 0)=00000000H=00000000H 限長(位限長(位19190 0)=FFFFFH=FFFFFH G=1G=1,限長是以頁為單位的,段的大小為,限長是以頁為單位的,段的大小為(FFFFFH+1FFFFFH+1)2 21212=100000H=100000H2 21212=2=23232=4GB=4GB。段的基址

30、為段的基址為00000000H00000000H,長度為,長度為4GB4GB,其線,其線性地址范圍為性地址范圍為00000000H00000000HFFFFFFFFHFFFFFFFFH。微機(jī)接口技術(shù)微機(jī)接口技術(shù) 其他的各個(gè)位解釋如下:其他的各個(gè)位解釋如下: D=1D=1,因此這是一個(gè),因此這是一個(gè)3232位的段。位的段。 AVL=0AVL=0。 P=1P=1,這個(gè)段在內(nèi)存中。,這個(gè)段在內(nèi)存中。 DPL=11DPL=112 2=3=31616,段的特權(quán)級(jí)為,段的特權(quán)級(jí)為3 3。 S=1S=1,這不是一個(gè)系統(tǒng)段,而是一個(gè)代碼、數(shù)據(jù)段或,這不是一個(gè)系統(tǒng)段,而是一個(gè)代碼、數(shù)據(jù)段或堆棧段。堆棧段。 E=

31、1E=1,這是一個(gè)代碼段(可執(zhí)行)。,這是一個(gè)代碼段(可執(zhí)行)。 C=0C=0,這不是一個(gè)一致代碼段。因?yàn)?,這不是一個(gè)一致代碼段。因?yàn)镋=1E=1,這一位是,這一位是C C;若若E=0E=0,這一位代表,這一位代表EDED。 R=1R=1,可以對(duì)這個(gè)段進(jìn)行讀操作。因?yàn)?,可以?duì)這個(gè)段進(jìn)行讀操作。因?yàn)镋=1E=1,這一位是,這一位是R R;若;若E=0E=0,這一位代表,這一位代表W W。 試試解釋解釋DS=0023HDS=0023H所對(duì)應(yīng)的段。所對(duì)應(yīng)的段。微機(jī)接口技術(shù)微機(jī)接口技術(shù)段描述符高速緩存段描述符高速緩存 為了提高為了提高CPUCPU的運(yùn)行效率在的運(yùn)行效率在CPUCPU內(nèi)部設(shè)內(nèi)部設(shè)置了段描

32、述高速緩存,這些緩存不可見,置了段描述高速緩存,這些緩存不可見,自動(dòng)裝入段描述符。段描述符高速緩沖的自動(dòng)裝入段描述符。段描述符高速緩沖的內(nèi)容和內(nèi)容和6 6個(gè)段描述符寄存器索引的描述符個(gè)段描述符寄存器索引的描述符當(dāng)前值保持一致。當(dāng)前值保持一致。用戶不可見。用戶不可見。微機(jī)接口技術(shù)微機(jī)接口技術(shù)頁式內(nèi)存管理頁式內(nèi)存管理 保護(hù)模式下的保護(hù)模式下的CPUCPU支持分頁機(jī)制支持分頁機(jī)制,并且分,并且分頁管理是在分段管理機(jī)制的基礎(chǔ)上工作,頁管理是在分段管理機(jī)制的基礎(chǔ)上工作,它將它將分段管理機(jī)制得到的線性地址轉(zhuǎn)換為分段管理機(jī)制得到的線性地址轉(zhuǎn)換為物理地址物理地址。 使用分頁機(jī)制的使用分頁機(jī)制的好處好處在于,它

33、可以把每個(gè)在于,它可以把每個(gè)活動(dòng)任務(wù)當(dāng)前所必需的少量頁面放在內(nèi)存活動(dòng)任務(wù)當(dāng)前所必需的少量頁面放在內(nèi)存中,而不必將整個(gè)段調(diào)入內(nèi)存,從而中,而不必將整個(gè)段調(diào)入內(nèi)存,從而提高提高了內(nèi)存的使用效率了內(nèi)存的使用效率。微機(jī)接口技術(shù)微機(jī)接口技術(shù)分頁分頁 每一個(gè)任務(wù)都有它自己的線性地址空間。每一個(gè)任務(wù)都有它自己的線性地址空間。分頁管理時(shí)分頁管理時(shí)所有頁的長度固定,頁與頁之間所有頁的長度固定,頁與頁之間也沒有重疊。也沒有重疊。 假定頁面大小為假定頁面大小為4KB4KB,則,則3232位位CPUCPU將將4GB4GB的的線性地址空間劃分成線性地址空間劃分成2 22020頁。固定長度的頁可頁。固定長度的頁可能會(huì)產(chǎn)生

34、碎片,會(huì)浪費(fèi)一些內(nèi)存空間。能會(huì)產(chǎn)生碎片,會(huì)浪費(fèi)一些內(nèi)存空間。微機(jī)接口技術(shù)微機(jī)接口技術(shù)分頁機(jī)制下分頁機(jī)制下線性地址轉(zhuǎn)換為物理地址的過程線性地址轉(zhuǎn)換為物理地址的過程 分頁機(jī)制就是一種將線性地址的頁分頁機(jī)制就是一種將線性地址的頁面映射到物理地址頁面的手段,也就是從面映射到物理地址頁面的手段,也就是從線性地址到物理地址的轉(zhuǎn)換過程。分頁機(jī)線性地址到物理地址的轉(zhuǎn)換過程。分頁機(jī)制中用到了兩個(gè)表:制中用到了兩個(gè)表:頁表目錄表和頁表頁表目錄表和頁表。微機(jī)接口技術(shù)微機(jī)接口技術(shù)3232位線性地址被劃分為位線性地址被劃分為3 3個(gè)部分:個(gè)部分:頁目錄索引頁目錄索引 頁表索引頁表索引 字節(jié)索引字節(jié)索引其中第其中第1 1

35、項(xiàng)是對(duì)頁目錄(項(xiàng)是對(duì)頁目錄(Page DirectoryPage Directory)的索引,第的索引,第2 2項(xiàng)是對(duì)頁表(項(xiàng)是對(duì)頁表(Page TablesPage Tables)的索)的索引,第引,第3 3項(xiàng)是線性地址在頁面內(nèi)的偏移。項(xiàng)是線性地址在頁面內(nèi)的偏移。1010位位1212位位1010位位微機(jī)接口技術(shù)微機(jī)接口技術(shù)線性地址轉(zhuǎn)換為物理地址的過程線性地址轉(zhuǎn)換為物理地址的過程Linear Address從何而來?從何而來?微機(jī)接口技術(shù)微機(jī)接口技術(shù)頁表項(xiàng)頁表項(xiàng) 頁表項(xiàng)就是在分頁轉(zhuǎn)換時(shí)用到的頁表項(xiàng)就是在分頁轉(zhuǎn)換時(shí)用到的頁表描述頁表描述符符和和頁描述符頁描述符,都是,都是3232位,頁表項(xiàng)格式如

36、圖位,頁表項(xiàng)格式如圖3-3-2929。高高2020位基地址位基地址AVLAVL0 0D D0 0A A0 00 0R/WR/WU/SU/SP P31 12 11 10 9 8 7 6 5 31 12 11 10 9 8 7 6 5 4 3 2 1 04 3 2 1 03 3位位, ,由操由操作系統(tǒng)使作系統(tǒng)使用用1:1:有寫操作有寫操作0:0:沒有寫操作沒有寫操作只用于頁描述符只用于頁描述符訪問標(biāo)志訪問標(biāo)志1:1:訪問過訪問過0:0:沒有訪問過沒有訪問過0:0:管理員模式管理員模式1:1:用戶模式用戶模式針對(duì)應(yīng)用程序針對(duì)應(yīng)用程序0:0:讀讀1:1:可讀寫可讀寫存在位存在位. .1:1:存在存在0:0:不存在不存在微機(jī)接口技術(shù)微機(jī)接口技術(shù) 頁目錄、頁表和物理頁的基地址的低頁目錄、頁表和物理頁的基地址的低1212位位全部為全部為0 0,定位在頁的邊界上。,定位在頁的邊界上。 頁表項(xiàng)的低頁表項(xiàng)的低1212位提供保護(hù)功能和統(tǒng)計(jì)信息。位提供保護(hù)功能和統(tǒng)計(jì)信息。U/SU/S位、位、R/WR/W位、位、P P

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論