中断系统

来源:互联网 发布:mac 删除云梯配置 编辑:程序博客网 时间:2024/05/01 13:13
中断:CPU中止正在执行的程序,转去处理随机提出的要求,待处理完后,再回到原先被打断的程序继续恢复执行的过程称为中断。
响应和处理各种中断的软硬件的总体称为中断系统,它是计算机系统的重要组成部分。中断系统的功能包括中断请求的保存和清除,优先级的确定,中断断点及现场的保存,对中断请求的分析和处理以及中断返回等。

在计算机中,中断可分为内部中断,外部中断,软件中断三类。
内部中断由CPU内的异常引起;
外部中断由中断信号引起,又可分为可屏蔽中断和不可屏蔽中断;
软件中断由自陷指令引起,用于供操作系统服务。

引起中断的各种事件称为中断源,中断源向中断系统发出中断请求。同时可能有多个中断请求,因此中断系统需要按事先确定的中断响应优先次序对优先级高的中断请求予以响应。
中断响应是允许其中断CPU现行程序的运行,转去对该请求进行预处理,包括保存好断点及其现场,调出有关处理该中断的中断服务程序,准备运行。

由于中断源比较多,但不少中断源的性质比较接近,可以对它们进行分类,对每一类给定一个中断服务程序的入口,再由软件分支转入相应的中断处理部分。常见的分类有:
1.机器校验中断:高速程序发生了设备故障,比如电源故障,主存出错等。
2.访管中断:用户程序需要操作系统介入,调用操作系统服务。
3.程序性中断:包括指令和数据的格式错,程序执行中出现异常等。
4.外部中断:来自机器外部,包括定时器中断,外部信号中断,中断键中断。
5.I/O中断
6.重启中断。

中断的优先次序一般为:机器校验为第一级,程序性和管理程序调用为第二级,外部为第三极,I/O为第四级,重启为最低级。
中断响应的次序可以用排队器硬件实现,次序由高到低固定。但为了根据需要,让操作系统灵活改变中断实际的中断处理次序,很多机器设置了中断级屏蔽位寄存器,以决定某些中断请求是否可进入中断响应排队器。程序状态字中包含有中断级屏蔽位字段,只有操作系统能对其进行设置,来实现中断处理次序。

中断嵌套:

一般在处理某级中的某个中断时,与它同级或比它优先级低的中断请求不能中断它的处理,只有比它高一级的中断请求才能中断其处理,等响应和处理完后再继续处理原先的中断请求。

不少计算机还把中断现行程序的事件分成中断和异常,以便根据其不同的特点给予不同的控制和处理。
异常:由现行程序引起的暂停事件,比如运算结果异常,页面失效等,一般不能屏蔽,需要立即相应处理。
中断:指那些与当前程序运行无关的请求暂停事件,比如机器故障中断,I/O中断等,可被屏蔽,未被响应的中断被暂存起来,直到屏蔽解除后仍可得到相应和处理。
0 0
原创粉丝点击