- UID
- 1029342
- 性别
- 男
|
三、中断处理流程
1.确定与中断或异常关联的向量i.
2.读取由IDTR寄存器指向的IDT表中的第i项中断描述符。
3.从GDTR寄存器获得GDT的基地址,并在GDT中查找,以获取IDT表中的第i项中断描述符的段选择符。
4.特权级比较,以及一些入栈保护操作。
5.装载cs和eip寄存器,其值分别为IDT表中第i项门的段选择符合偏移量字段。这样就可以转到对应的中断处理程序IRQn_interrupt执行(就是对IDT初始化的中断函数)。
6.对应的中断处理程序IRQn_interrupt最后都会调用do_IRQ(i).再执行用户程序设置的中断处理函数。
如图所示:
|
|