複製鏈接
請複製以下鏈接發送給好友

GDT

(全局描述表)

鎖定
全局描述表(GDT Global Descriptor Table):在保護模式下一個重要的數據結構
中文名
全局描述表
外文名
Global Descriptor Table
GDT可以被放在內存的任何位置,那麼當程序員通過段寄存器來引用一個段描述符時,CPU必須知道GDT的入口,也就是基地址放在哪裏,所以Intel的設計者們提供了一個寄存器GDTR用來存放GDT的入口地址,程序員將GDT設定在內存中某個位置之後,可以通過LGDT指令將GDT的入口地址裝入此寄存器,從此以後,CPU就根據此寄存器中的內容作為GDT的入口來訪問GDT了。
GDT是保護模式所必需的數據結構,也是唯一的的。另外,正如它的名字(Global Descriptor Table)所揭示的,它是全局可見的,對任何一個任務而言都是這樣。
除了GDT之外,IA-32還允許程序員構建與GDT類似的數據結構,它們被稱作LDT(Local Descriptor Table),但與GDT不同的是,LDT在系統中可以存在多個,並且從LDT的名字可以得知,LDT不是全局可見的,它們只對引用它們的任務可見,每個任務最多可以擁有一個LDT。另外,每一個LDT自身作為一個段存在,它們的段描述符被放在GDT中。