Chinaunix首页 | 论坛 | 博客
  • 博客访问: 602682
  • 博文数量: 68
  • 博客积分: 2621
  • 博客等级: 少校
  • 技术积分: 1498
  • 用 户 组: 普通用户
  • 注册时间: 2010-10-23 21:04
文章分类

全部博文(68)

文章存档

2013年(8)

2012年(52)

2010年(8)

分类: LINUX

2012-03-04 14:39:49

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

描述符表(即段表)定义了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描述符。
阅读(2981) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~