操作系统(4)---中断
一、中断
中断伴随多道程序设计(并发)产生,由软件(os根据中断号将中断程序调出来执行)和硬件(响应中断)共同实现,主要作用是实现系统调用。
中断按中断源分为内中断和外中断(CPU内外):
- 内中断(也称为异常、例外、陷入)
- 自愿中断——指令中断(eg. 用户运行时主动发起中断)
- 强制中断
-
-
- 硬件故障(e.g 缺页,OS未准备好,解决方法:重新启动)
- 软件中断(e.g 除零,解决方法:杀死进程)
-
- 外中断(中断)
- 外设请求(e.g I/O设备发起中断,被动中断)
- 人工干预(e.g 人工结束进程)
二、中断处理机制
- 保护现场(各寄存器的值,存在内存中的进程控制块PCB中)
- 后继指令所在主存单元号
- 程序运行所处的状态
- 指令执行状况
- 程序执行的中间结果
总的来说,保护确保程序继续执行的有关信息
- 中断响应及服务处理
- 保留程序断点及处理及有关信息
- 自动转入相应的中断处理程序执行
中断响应实质:交换指令地址及处理机的状态信息
- 清除中断标记
- 恢复现场