操作系统笔记(四)中断

操作系统笔记(四)中断

ctime:2020-04-30 13:33:34 +0900|1588221214

标签(空格分隔): 技术 操作系统


练习6

  • 中断描述符表(也可简称为保护模式下的中断向量表)中一个表项占多少字节?其中哪几位代表中断处理代码的入口?
    • 8个字节
    • 16-31位表示段选择子,0-15位为偏移的低16位,高16位位于中断描述符的最高16位(48-64位)

8086(80386)的中断向量表并不像ARM的中断向量表放在地址0处,而是位置可变。当建好中断向量表之后,
通过lidt指令,将中断向量表的地址给IDTR寄存器,这样当CPU发生中断时,他会从这个IDTR寄存器获取到中断向量表的位置,
然后在里面找相应的中断服务函数的地址。

与gdt(全局内存分段描述表)一样,传给lidt除了要给中断向量表的地址外,还要给内存界限。因此也是32+16=48位。

建立idt的函数:


#define SETGATE(gate, istrap, sel, off, dpl) {            \
    (gate).gd_off_15_0 = (uint32_t)(off) & 0xffff;        \
    (gate).gd_ss 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值