描述符表

来源:互联网 发布:医疗与大数据 编辑:程序博客网 时间:2024/06/11 05:17

各种各样的用户描述符和系统描述符,都放在对应的全局描述符表、局部描述符表和中断描述符表中。

描述符表(即段表)定义了386系统的所有段的情况。所有的描述符表本身都占据一个 字节为8的倍数的存储器空间,空间大小在8个字节(至少含一个描述符)到64K字节(至多含8K)个描述符之间。

1. 全局描述符表(GDT)

全局描述符表GDT(Global Descriptor Table)除了任务门,中断门和陷阱门描述符外,包含着系统中所有任务都共用的那些段的描述符。它的第一个8字节位置没有使用。

2. 中断描述符表(IDT)

中断描述符表IDT(Interrupt Descriptor Table),包含256个门描述符。IDT中只能包含任务门、中断门和陷阱门描述符,虽然IDT表最长也可以为64K字节,但只能存取2K字节以内的描述符,即256个描述符,这个数字是为了和8086保持兼容。

3. 局部描述符表(LDT)

局部描述符表LDT(local Descriptor Table),是保护模式下存储器寻址的一种数据表,它包含了与某个任务相关联的段描述符。在设计操作系统时,通常每个任务有一个独立的LDTLDT提供 了将一任务的代码段、数据段与操作系统的其余部分相隔离的机制。

        4. LDT 与 GDT 的关系

        LDT的定位与GDT不同LDT的段基址与段限由LDT描述符表示,该描述符同一般的描述符 一样存放在全局描述符表中,因此首先要从GDT中找到LDT描述符,80386微处理器中有一个局部描述符表寄存器 LDTR,这是一个16位寄存器,LDTR中存放一个被称为“段选择符”(Segment Selector)的16位数,段选择符用来在GDT中寻找LDT描述符。
原创粉丝点击