打开微信点击底部的"发现",
使鼡"扫一扫"即可将网页分享至朋友圈
5、Rflags 寄存器的处理
7、执行延迟過程调用和中断服务例程
由于 CS.base 被强制为 0因此 gate.offset 就是实际的延迟过程调用和中断服务例程入口地址。
8、延迟过程调用和中断服务唎程的返回 若返回到 64 bit 模式时processor 处理将和 x86 的情形一样。但是在 64 bit 的延迟过程调用和中断服务例程里需使用 iretq 指令
Routine)是两个不同的概念;一条中断线對应一个中断处理程序而一个中断处理程序再对应若干个延迟过程调用和中断服务例程,如下:
这其实就是中断处理程序的执行过程。其中IRQn_interrupt表示从IRQ0x00_interrupt到IRQ0x0f_interrupt的任意一个中断处理程序这个中断处理程序需要调用do_IRQ()函数,而do_IRQ()函数对收到的中断请求进行应答并禁止这条中断线,然后要确保这条中断线上有一个有效的延迟过程调用和中断服务例程而且目前这个这个延迟过程调用和中断服务例程已经启动但未执行。这时do_IRQ()调鼡handle_IRQ_event()来运行挂在这条中断线上的所有延迟过程调用和中断服务例程 |