操作系统–中断和异常
中断机制的诞生
- 为了实现多道批程序并发执行的一种技术,而发明出中断,主要为了提高资源的利用率。
中断的概念
- 发生中断,就意味着需要操作系统介入开展管理工作,cpu会立即进入核心态
中断的类型
- 内中断:由CPU内部事件引起。例:访管中断、程序中断
- 强迫性中断:程序没有预期:例I/O(外设输入输出)、外部中断
- 自愿中断:程序有预期的、例:执行访管指令
- 外中断:由CPU外部事件引起。例:I/O、外部事情
或者
- 内中断:由CPU内部事件引起。例:访管中断、程序中断
- 陷入(trap) :有意为之,程序有预期的,如系统调用
- 故障(fault) :由错误条件引起的,可能被故障处理程序修复,如缺页
- 终止(abort) :不可修复的,如整数除以0
- 外中断:由CPU外部事件引起。例:I/O、外部事情
外中断处理过程
- 关中断(硬件完成)
- 保存断点(硬件完成)
- 中断服务程序寻址(硬件完成)
- 保存现场和屏蔽字(中断程序完成)
- 开中断(中断程序完成)
- 执行中断服务程序(中断程序完成)
- 关中断(中断程序完成)
- 恢复现场和屏蔽字(中断程序完成)
- 开中断并中断返回(中断程序完成)