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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

两张图看懂GDT、GDTR、LDT、LDTR的关系

發(fā)布時(shí)間:2025/6/15 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 两张图看懂GDT、GDTR、LDT、LDTR的关系 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
段選擇器:32位匯編中16位段寄存器(CS、DS、ES、SS、FS、GS)中不再存放段基址,而 是段描述符在段描述符表中的索引值,D3-D15位是索引值,D0-D1位是優(yōu)先級(jí)(RPL)用于特權(quán)檢查,D2位是描述符表引用指示位TI,TI=0指 示從全局描述表GDT中讀取描述符,TI=1指示從局部描述符中LDT中讀取描述符。這些信息總稱段選擇器(段選擇子).

段描述符:8個(gè) 字節(jié)64位,每一個(gè)段都有一個(gè)對(duì)應(yīng)的描述符。根據(jù)描述符描述符所描述的對(duì)象不同,描述符可分為三類:儲(chǔ)存段描述符,系統(tǒng)段描述符,門描述符(控制描述 符)。在描述符中定義了段的基址,限長和訪問內(nèi)型等屬性。其中基址給出該段的基礎(chǔ)地址,用于形成線性地址;限長說明該段的長度,用于存儲(chǔ)空間保護(hù);段屬性 說明該段的訪問權(quán)限、該段當(dāng)前在內(nèi)存中的存在性,以及該段所在的特權(quán)級(jí)。

段描述符表:IA-32處理器把所有段描述符按順序組織成線性表 放在內(nèi)存中,稱為段描述符表。分為三類:全局描述符表GDT,局部描述符表LDT和中斷描述符表IDT。GDT和IDT在整個(gè)系統(tǒng)中只有一張,而每個(gè)任務(wù) 都有自己私有的一張局部描述符表LDT,用于記錄本任務(wù)中涉及的各個(gè)代碼段、數(shù)據(jù)段和堆棧段以及本任務(wù)的使用的門描述符。GDT包含系統(tǒng)使用的代碼段、數(shù) 據(jù)段、堆棧段和特殊數(shù)據(jù)段描述符,以及所有任務(wù)局部描述符表LDT的描述符。

GDTR全局描述符寄存器:48位,高32位存放GDT基址,低16為存放GDT限長。
LDTR局部描述符寄存器:16位,高13為存放LDT在GET中的索引值。

IA-32處理器仍然使用xxxx:yyyyyyyy(段選擇器:偏移量)邏輯方式表示一個(gè)線性地址,那么是怎么得到段的基址呢?在上面說明中我們知道,要得到段的基址首先通過段選擇器xxxx中TI位指定的段描述符所在位置: 當(dāng) TI=0時(shí)表示段描述符在GDT中,如下圖所示:① 先從GDTR寄存器中獲得GDT基址。② 然后再GDT中以段選擇器高13位位置索引值得到段描述符。③ 段描述符符包含段的基址、限長、優(yōu)先級(jí)等各種屬性,這就得到了段的起始地址(基址),再以基址加上偏移地址yyyyyyyy才得到最后的線性地址。


當(dāng)TI=1時(shí)表示段描述符在LDT中,如下圖所示:① 還是先從GDTR寄存器中獲得GDT基址。② 從LDTR寄存器中獲取LDT所在段的位置索引(LDTR高13位)。③ 以這個(gè)位置索引在GDT中得到LDT段描述符從而得到LDT段基址。④ 用段選擇器高13位位置索引值從LDT段中得到段描述符。⑤ 段描述符符包含段的基址、限長、優(yōu)先級(jí)等各種屬性,這就得到了段的起始地址(基址),再以基址加上偏移地址yyyyyyyy才得到最后的線性地址。

總結(jié)

以上是生活随笔為你收集整理的两张图看懂GDT、GDTR、LDT、LDTR的关系的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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