9.1 识别中断(Identifying Interrupts)

处理器用一个数字来标识不同类型的中断和异常。

NMI和异常的标识号已经被预先定义好了,从0~31。当前不是所有的编号都被80386使用。没有使用的标识号被INTEL用作以后扩展而保留。

可屏蔽中断的标识号则由外部中断控制器来分配(如果8259A可编程中断控制器)当处理器的中断识别周期时和主机通信。被8259A PIC 分配的中断号可以通过软件来指定。任何一个从32到255的编号都可以使用。表9-1显示了中断和异常标识号的分配。

由它们被报告的方式和引起异常的指令是否重起(restart),异常被分类为错误(faults),陷阱(traps),和中止(aborts)。

错误(Faults)在指令引起异常前就报告的异常是错误。错误可能在指令执行前检测到或者在指令执行期间检测到。如果是在执行期间检测到的,机器将会恢复到指令执行前的状态,以便可以重想指令。

陷阱(Traps)陷阱是在引起异常的指令边界检测到的。

中止(aborts)中止是即不能精确定位引起异常的指令也不能重起引起异常的指令的异常。中止用来报告很严重的错误,如硬件错误或系统表的不一致性和错误。