计组-5.5 异常和中断机制
5.5 异常和中断机制
异常:CPU内部产生的意外事件
中断:CPU外部的设备向CPU发出的中断请求
异常和中断的分类:
异常:
- 硬故障中断
- 终止(Abort)
- 程序性异常(软件中断)
- 故障(Fault):在引起故障的指令启动后,执行结束前被检测到的异常事件。无法通过异常处理程序恢复故障,必须终止进程的执行。
- 自陷(Trap):预先安排的一种“异常”事件。
中断:
可屏蔽中断
不可屏蔽中断
异常和中断的不同点:
- 一些异常(eg缺页溢出)是由特定指令在执行过程中发生的。而中断不和任何指令相关联,也不阻止任何指令的完成。
- 异常的检测由CPU自身完成。对于中断,CPU必须通过中断请求线获取中断源的信息,才能知道哪个设备发生了何种中断。
异常和中断的相应过程:
- 关中断
- 保存断点和程序状态
- 识别异常和中断并转到相应的处理程序
- 异常大多使用软件识别的方式:CPU设置一个异常状态寄存器,用于记录异常原因。
- 中断可以采用软件识别和硬件识别的方式:又称向量中断。
评论

