中断向量表 和 中断描述符 关系


在实模式下,从地址 0 开始的 1KB 大小内存构成一个中断向量表,表中每一项包括 4 个字节,对应一

个中断向量,保存了该中断向量所对应中断处理程序的入口地址,如图 6.4 所示。
进入保护模式后,中断向量表改名为中断描述符表(Interrupt Descriptor Table,IDT)
,并允许在任意
内存地址存放,
因此 CPU 专门设置了一个中断描述符表寄存器 IDTR,
用来存储 IDT 在内存中的起始地址。
同时 IDT 的每个表项被称为门描述符(Gate Descriptor)
,也不再是 4 个字节,而是扩展为 8 个字节。
“门”的意思是当异常或中断发生时,必须先通过相应门的检查,才可以进入异常或中断服务程序。
如图 6.5 所示为 IDTR 寄存器的结构。

IDTR 低 16 位保存 IDT 的大小,由此可见,保护模式下 IDT 最大可以有 64KB,即 8K 个表项。但由
于 I386 只识别 256 个中断向量,所以 IDT 最大只能为 2KB,即包含 256 个表项,对应 256 个中断向量。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值