中断技术学习
中断概念
中断(interrupt)是指程序执行过程中,当发生某个事件时,中止CPU上现行程序的运行,引出处理该事件的服务程序执行的过程
简单点说就是,中断是一个过程。其中,引起中断的事件称为中断源,发现中断源并产生中断的硬件成为中断装置
中断源分类
- 强迫性中断
字面意思理解,(CPU:不是咱想停,,咱是被逼的!)
(1) 机器故障
(2) 程序性中断:除数为0,地址越界,定点溢出
(3) 外部中断:时钟定时中断,控制台发出的信息
(4) 输入输出中断 - 自愿性中断
程序所期待的事件,是由于程序执行了一条仿管指令引起的
中断和陷入区别:
中断是与现行指令无关的信号触发的,通常在两条机器指令之间才可以响应中断,陷入是由现行指令引起的
中断装置
作为发现中断源的装置,主要做三件事:
- 发现中断源,根据中断的优先级发出中断请求
- 保护现场,将进程的PSW保存下来,待中断结束继续执行
- 启动中断处理程序
自己绘制一个中断处理的流程图方便理解吧。。