




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、-Intel X86 CPU系列的存放器系統(tǒng)軟件開發(fā)指南系列主要內(nèi)容n學(xué)習(xí)存放器知識(shí)的意義n32位CPU系統(tǒng)存放器和數(shù)據(jù)構(gòu)造n存放器分類引見n通用存放器n標(biāo)志存放器n控制存放器n調(diào)試存放器n中斷和異常管理存放器n內(nèi)存管理存放器n在操作系統(tǒng)上用到的存放器學(xué)習(xí)存放器知識(shí)的意義n掌握系統(tǒng)軟件設(shè)計(jì)n匯編嵌入在C言語(yǔ)中的編寫nBoot loader的設(shè)計(jì)(BSP)n了解Intel CPU的開展趨勢(shì)n深化了解平臺(tái)的體系構(gòu)造n編寫更高質(zhì)量的代碼n編譯器底層的優(yōu)化32位CPU系統(tǒng)級(jí)存放器和數(shù)據(jù)構(gòu)造(1)大家在這張圖中大家在這張圖中,留意存留意存放器類別之間的關(guān)系放器類別之間的關(guān)系.12233432位CPU系統(tǒng)
2、級(jí)存放器和數(shù)據(jù)構(gòu)造(2) 邏輯地址邏輯地址 線性地址線性地址物理地址轉(zhuǎn)換圖物理地址轉(zhuǎn)換圖頁(yè)框選擇符偏移量CR3描畫符表1503100223112 1121段描畫符基地址+頁(yè)目錄頁(yè)表項(xiàng)頁(yè)內(nèi)偏移值頁(yè)目錄表頁(yè)表頁(yè)目錄項(xiàng)頁(yè)表項(xiàng)物理地址邏輯地址線性地址存放器分類引見(1) -通用存放器AXBXCXDXSPBPSIDI堆棧指針源地址基址指針目的地址指針存放器變址存放器數(shù)據(jù)存放器通用存放器假設(shè)前面帶由大寫字母E,代表32位存放器存放器分類引見(2)n標(biāo)志存放器(EFLAGS register) -only onen作用: 控制義務(wù)形狀和方式切換、中斷處置、指令追蹤和訪問權(quán)限控制.存放器中的標(biāo)志位需求特權(quán)指令
3、代碼才可以修正(特權(quán)指令:運(yùn)轉(zhuǎn)在內(nèi)核態(tài)下的代碼)Figure : System Flags in the EFLAGS Register置標(biāo)志位的有效位看他詳細(xì)要做什么,對(duì)應(yīng)的位置置有效的標(biāo)志位存放器分類引見(3)n控制存放器(CR0, CR1, CR2, CR3, and CR4)n作用:控制存放器決議處置器的操作方式和當(dāng)前執(zhí)行義務(wù)的一些特征n種類:nCR0: 控制系統(tǒng)的任務(wù)方式和處置器的形狀nCR1: 保管nCR2 :保管出錯(cuò)的線性地址nCR3:頁(yè)目錄基址的物理地址和PCD和PWT標(biāo)志位(和CACHE有關(guān))nCR4:一些構(gòu)造的擴(kuò)展.闡明對(duì)于特定的處置器和操作系統(tǒng)執(zhí)行支持. 由實(shí)方式轉(zhuǎn)換到維
4、護(hù)方式、二級(jí)頁(yè)面映射機(jī)制的建立、中斷處置等等,會(huì)用到這些存放器,.存放器分類引見(4)n控制存放器(CR0, CR1, CR2, CR3, and CR4)在這些存放器中, 設(shè)置標(biāo)志位的主要集中在CR0與CR4.存放器分類引見(5)n控制存放器(CR0, CR1, CR2, CR3, and CR4)nCR0nPG:分頁(yè)有效時(shí),置位為1,清空時(shí)為0.與PE一同運(yùn)用.該指令闡明能否運(yùn)用頁(yè)表將線性地址轉(zhuǎn)換成物理地址nCD: cache 缺失設(shè)置位nNW:直寫無效(直寫:高速緩存中的數(shù)據(jù)一直堅(jiān)持與主存儲(chǔ)器中數(shù)據(jù)匹配 )nAM: 對(duì)齊功能屏蔽(與EFLAGS存放器中 AC標(biāo)志位一同運(yùn)用)nWP:寫維護(hù)
5、nNE: 數(shù)字錯(cuò)誤標(biāo)志位(與浮點(diǎn)協(xié)處置器共同運(yùn)用)nET: 擴(kuò)展類型.設(shè)置有效位時(shí),支持 ntel 387 DX 數(shù)學(xué)協(xié)處置器指令.nTS: 每當(dāng)義務(wù)切換時(shí)就設(shè)置該位,并且在解釋協(xié)處置器指令之前測(cè)試該位nEM;該位闡明能否需求仿真協(xié)處置器的功能nMP:協(xié)處置器監(jiān)視標(biāo)志位nPE: 維護(hù)方式使能,當(dāng)設(shè)置有效位,CPU任務(wù)在維護(hù)方式.反之,實(shí)方式.存放器分類引見(6)n控制存放器(CR0, CR1, CR2, CR3, and CR4)nCR3:nPCD:控制當(dāng)前頁(yè)目錄表的緩沖,當(dāng)設(shè)置清空時(shí),緩沖.置位時(shí),緩沖無效.與CR0中的CD或PG一同運(yùn)用nPWT:控制cache采取直寫還是回寫的戰(zhàn)略.當(dāng)設(shè)置
6、清空時(shí),回寫有效.當(dāng)置位時(shí),直寫有效.nCR4:nVME:虛地址方式.當(dāng)清空時(shí),無效.nPVI:維護(hù)方式虛中斷,當(dāng)清空時(shí),無效nTSD:時(shí)間戳允許標(biāo)志位.當(dāng)清空時(shí),允許RDTSC指令執(zhí)行在義務(wù)特權(quán)級(jí)上.當(dāng)置位時(shí),只允許任務(wù)在特權(quán)級(jí)0.nDE:調(diào)試擴(kuò)展.置位,闡明DR4與DR5將產(chǎn)生沒有定義的異常nPSE:當(dāng)置位,運(yùn)用4M的頁(yè)面;清空,運(yùn)用4K的頁(yè)面nPAE:置位,運(yùn)用36物理內(nèi)存的分頁(yè)機(jī)制.清空時(shí),運(yùn)用32位分頁(yè)機(jī)制nMCE:置位,運(yùn)用機(jī)器檢查異常機(jī)制.nPGE:置位,啟動(dòng)全局頁(yè)面.當(dāng)寫CR3時(shí),也不會(huì)被交換.nPCE:置位,闡明使RDPMC指令任務(wù)在任何維護(hù)級(jí)別.nOSFXSR:置位.闡明操
7、作系統(tǒng)支持FXSAVE and FXRSTOR指令nOSXMMEXCPT:置位.闡明操作系統(tǒng)支持不可屏蔽的SIMD浮點(diǎn)異常.存放器分類引見(7)n調(diào)試存放器n作用:調(diào)試存放器主要作用是調(diào)試運(yùn)用代碼、系統(tǒng)代碼、開發(fā)多義務(wù)操作系統(tǒng).來監(jiān)視代碼的運(yùn)轉(zhuǎn)和處置器的性能.nDR0-DR3:調(diào)試地址存放器nDR4DR5:保管.還沒有定義nDR6: 調(diào)試形狀存放器nDR7: 調(diào)試控制存放器在開發(fā)底層系統(tǒng)時(shí),會(huì)用到這些存放器.存放器分類引見(8)n調(diào)試存放器設(shè)置標(biāo)志位集中在DR7存放器分類引見(9)n調(diào)試存放器調(diào)試存放器nDR0-DR3:保管保管32位斷點(diǎn)的線性地址位斷點(diǎn)的線性地址.nDR6nB0B3:斷點(diǎn)形狀
8、的監(jiān)測(cè)斷點(diǎn)形狀的監(jiān)測(cè)nBD:調(diào)試存放器訪問監(jiān)測(cè)調(diào)試存放器訪問監(jiān)測(cè).置位置位,闡明在指令流中闡明在指令流中,下一條指令將訪問其下一條指令將訪問其中中n 的一個(gè)調(diào)試存放器的一個(gè)調(diào)試存放器nBS:單步執(zhí)行標(biāo)志位單步執(zhí)行標(biāo)志位nBT:義務(wù)轉(zhuǎn)換標(biāo)志位義務(wù)轉(zhuǎn)換標(biāo)志位nDR7:nL0L3:部分?jǐn)帱c(diǎn)使能標(biāo)志位部分?jǐn)帱c(diǎn)使能標(biāo)志位nG0-G3: 全局?jǐn)帱c(diǎn)使能標(biāo)志位全局?jǐn)帱c(diǎn)使能標(biāo)志位nLE AND GE:置位置位,闡明處置器可以監(jiān)測(cè)導(dǎo)致數(shù)據(jù)斷點(diǎn)的指令闡明處置器可以監(jiān)測(cè)導(dǎo)致數(shù)據(jù)斷點(diǎn)的指令.引薦置引薦置位為位為1.nGD:通用監(jiān)測(cè)使能標(biāo)志位通用監(jiān)測(cè)使能標(biāo)志位.闡明能否開啟調(diào)試存放器維護(hù)闡明能否開啟調(diào)試存放器維護(hù).nLE
9、N0 through LEN3 : 用來闡明相應(yīng)斷點(diǎn)地址存放器內(nèi)存位置的大用來闡明相應(yīng)斷點(diǎn)地址存放器內(nèi)存位置的大小小.nR/W0 through R/W3: 相應(yīng)斷點(diǎn)的形狀相應(yīng)斷點(diǎn)的形狀存放器分類引見(10) -中斷和異常管理存放器n中斷描畫符表(IDT)n中斷描畫符和每一個(gè)中斷和異常向量的門描畫符有關(guān).而門描畫符就是每一個(gè)中斷或異常處置程序的入口地址.Figure : Relationship of the IDTR and IDTn中斷門和圈套門都是間接的指向一個(gè)過程,該過程將在當(dāng)n 前執(zhí)行義務(wù)上下文中執(zhí)行.門描畫符中的段選擇符指向n GDT或當(dāng)前LDT中的一個(gè)可執(zhí)行段的描畫符.門描畫符的
10、n 偏移字段值指向中斷或者異常處置過程的開場(chǎng)處.n中斷的執(zhí)行或者異常處置過程的方式與CALL指令調(diào)用過n 程類似.只是在堆棧的運(yùn)用上略有不同(call調(diào)用運(yùn)用的是CS與IP,還有前往地址;中斷需求保管的上下文要多一些).n中斷門和圈套門的區(qū)別在于對(duì)中斷允許標(biāo)志位IF的影響對(duì)于中斷門,在轉(zhuǎn)移過程中把IF置為0,使得在處置程序執(zhí)行期間屏蔽掉INTR中斷;對(duì)于圈套門,在轉(zhuǎn)移過程中堅(jiān)持IF位不變,即假設(shè)IF位原來是1,那么經(jīng)過圈套門轉(zhuǎn)移四處置程序之后仍允許INTR中斷。.存放器分類引見(11) -中斷和異常管理存放器存放器分類引見(12) -中斷和異常管理存放器nIDT DESCRIPTORSn義務(wù)門
11、描畫符n中斷們描畫符n圈套門描畫符存放器分類引見(13) -內(nèi)存管理存放器nGDTR:全局段描畫符表存放器nLDTR: 部分段描畫符表存放器nIDTR: 中斷描畫符表存放器,指向中斷向量表(前面已講)nTask register: 義務(wù)存放器,指向處置器當(dāng)前所需當(dāng)前義務(wù)的信息.n全局段描畫符表存放器(GDTR)n在Intel X86 CPU系列的尋址方式一講中,實(shí)方式下的段存放器在維護(hù)方式下不是傳統(tǒng)意義上的代表地址的概念,而變成了指向段描畫符的一個(gè)索引.因此我們看到的六個(gè)存放器都變成了segment selector.存放器分類引見(14) -內(nèi)存管理存放器Figure1: segment s
12、electorFigure2: segment registers存放器分類引見(15) -內(nèi)存管理存放器n全局段描畫符表存放器(GDTR)BASE Segment base address(段基址)DPL Descriptor privilege level(段描畫符特權(quán)級(jí))LIMIT Segment Limit (段限)P Segment present (段存在位)存放器分類引見(16) -內(nèi)存管理存放器n義務(wù)管理n系統(tǒng)中,一個(gè)義務(wù)由兩部分組成:義務(wù)的運(yùn)轉(zhuǎn)空間和義務(wù)形狀段(TSS).義務(wù)的運(yùn)轉(zhuǎn)空間包括一個(gè)代碼段、一個(gè)堆棧段、假設(shè)干數(shù)據(jù)段.TSS指明了義務(wù)的運(yùn)轉(zhuǎn)空間和義務(wù)的形狀.在多義務(wù)系
13、統(tǒng)中,TSS還提供了銜接義務(wù)的機(jī)制.Figure . Structure of a Task存放器分類引見(17) -內(nèi)存管理存放器nTSS-義務(wù)形狀段nTask Staten段存放器:指明了當(dāng)前義務(wù)運(yùn)轉(zhuǎn)空間 (CS, DS, SS, ES, FS, and GS).n通用存放器的形狀n EFLAGS存放器的形狀、EIP存放器的形狀、CR3存放器的形狀、義務(wù)存放器的形狀、LDTR存放器的形狀.nI/O映射基地址和I/O地址 、指向特權(quán)0, 1, and 2的堆棧的堆棧指針、指向先前的運(yùn)轉(zhuǎn)義務(wù). Figure 1: 32-Bit Task-State Segment (TSS)這是一個(gè)數(shù)據(jù)構(gòu)造,
14、一個(gè)義務(wù)的一切信息存儲(chǔ)在這各字段內(nèi).這些字段分為兩類:第一: 處置器只讀其中信息的靜態(tài)字段集;第二:每次義務(wù)切換時(shí),處置器將會(huì)更新的動(dòng)態(tài)字段集.存放器分類引見(19) -內(nèi)存管理存放器nTSS-義務(wù)形狀段n我們?cè)谏蠄D中看到,TSS是一種特殊的數(shù)據(jù)構(gòu)造.提供一種有效的、受維護(hù)的多義務(wù)機(jī)制.nTSS可以出落在線性空間的任何位置,和其它段一樣,它是運(yùn)用段描畫符來定義的.訪問TSS描畫符會(huì)導(dǎo)致義務(wù)間的切換.我們可以將描畫符的DPL字段設(shè)置為0(最高優(yōu)先級(jí)).只允答應(yīng)信任的軟件執(zhí)行義務(wù)的切換.TSS的描畫符只能放在全局描畫符表GDT中.存放器分類引見(20) -內(nèi)存管理存放器n義務(wù)存放器n作用:支持多義務(wù)運(yùn)轉(zhuǎn)n義務(wù)描畫符n經(jīng)過指向TSS來確定當(dāng)前執(zhí)行的義務(wù).有1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 水產(chǎn)養(yǎng)殖基地土地使用權(quán)合同
- 公司技術(shù)服務(wù)采購(gòu)合同
- 豪華酒店廚師服務(wù)合同
- 電子產(chǎn)品購(gòu)銷合同標(biāo)準(zhǔn)版
- 房地產(chǎn)投資專項(xiàng)法律服務(wù)合同
- (完整版)農(nóng)村土地租賃合同書
- 光學(xué)玻璃的紫外光固化涂層技術(shù)考核試卷
- 醫(yī)療用品行業(yè)服務(wù)平臺(tái)拓展考核試卷
- 搪瓷原材料市場(chǎng)動(dòng)態(tài)與價(jià)格趨勢(shì)考核試卷
- 數(shù)字出版物的長(zhǎng)期保存與數(shù)字遺產(chǎn)考核試卷
- GB/T 18913-2002船舶和航海技術(shù)航海氣象圖傳真接收機(jī)
- 高中教師先進(jìn)事跡材料范文六篇
- 烹飪專業(yè)英語(yǔ)課件
- 3d3s基本操作命令教程課件分析
- 人教版三年級(jí)語(yǔ)文下冊(cè)晨讀課件
- 傳染病防治法培訓(xùn)講義課件
- 河南大學(xué)版(2020)信息技術(shù)六年級(jí)下冊(cè)全冊(cè)教案
- 法律方法階梯實(shí)用版課件
- DB32T 4353-2022 房屋建筑和市政基礎(chǔ)設(shè)施工程檔案資料管理規(guī)程
- 白描課件講義整理
- 實(shí)驗(yàn) 探究彈簧彈力與形變量的關(guān)系2022-2023學(xué)年高一物理(人教版2019必修第一冊(cè))
評(píng)論
0/150
提交評(píng)論