发生不可屏蔽的中断时中断控制器的服务中寄存器位



我有以下问题(关于x86架构):

当不可屏蔽中断(例如NMI)中断正在进行的可屏蔽中断时会发生什么?当可屏蔽中断被服务或服务中寄存器中的所有位被清除时,预留中断的相应ISR(服务中寄存器)标志是否仍设置在中断控制器的ISR寄存器中?

提前谢谢。

在最初的IBM PC硬件设计中,NMI信号没有以任何方式涉及中断控制器,因此它对在用寄存器没有影响。尽管已经过去了大约30年,但我猜情况仍然如此;现代芯片制造商或多或少都被这些核心遗留行为束缚住了手脚。

必须通过向中断控制器发送EOI命令(中断结束),在中断处理程序中清除ISR。

最新更新