中断方式的典型应用

2.中断方式的典型应用

下面结合实例介绍中断方式的一些典型应用。

(1)管理I/O设备

采用中断方式管理I/O设备,使CPU能与I/O设备并行工作。最初的中断控制技术也是基于这一点提出的。例如在键盘管理中,平时不需要浪费CPU的时间去查询健盘,仅当按下某键时才提出中断请求,然后CPU转入中断处理程序,接受按键编码。这种方式提高了CPU效率。

又如采用中断方式管理打印机一类输出设备。主机准备好一批打印信息后启动打印,然后CPU继续执行其他程序。当打印机做好接收信息的准备后,向CPU发出中断请求。CPU响应后,转去执行“打印机中断处理程序”,向打印机送出一批(如一行)打印信息,然后继续执行其主程序;打印机在打印完这一批信息后,再向CPU提出中断请求:如此重复,直到信息打印完毕。由于打印机打印一行字符的时间较长,而中断处理程序的执行时间却很短,一般为几十至几百纳秒,所以从宏观上看,主机与打印机可视为并行工作。

(2)处理突发故障

如掉电、存储器校验出错及运算溢出等故障,都是随机出现的,可预先安排在程序中某个位置上进行处理,且只能以中断方式处理,即事先编写好各种故障中断处理程序,一旦发生故障,立即转入这些处理程序。

例如发生掉电时,电源检测电路发出掉电中断请求信号,CPU利用电源短暂的维持时

间进行一些紧急处理,如将重要的信息存入非易失性存储器中。若系统带有不间断电源UPS,可将内存信息存入磁盘,或在UPS支持下继续工作一段时间。又如从存储器读出时发现奇偶校验出错、CRC校验出错等,也将提出中断请求。以上几种情况属于硬件故障。

软件运行中也可能发生意外的故障。例如定点运算中由于比例因子选取不当而出现溢出,除法运算中除数为0,产生除0错中断:访存时地址超出允许范围,产生地址越界中断:程序中使用了非法指令等。以上情况一般称为软件故障。

(3)实时处理

实时处理,是指在某个事件出现时应当及时地进行处理,不允许事后处理。例如,反导弹系统,对拦截导弹的控制就有“实时”要求,显然,这是不言而喻的。

(4)系统调度

在多道程序系统中,多道程序的切换往往由中断引发,例如时间片结束引发时钟中断。又如在虚拟存储器的实现中,由于缺页中断而引发对磁盘的调用。

(5)人机对话

系统的人机界面是一个需要重视的方面,应使操作者能方便地干预系统的运行,如通过键盘、鼠标等输入设备选择功能项,回答计算机的询间,了解系统运行情况与进度,输入临时命令等。这些是人机对话中人的操作,通常都以中断方式进行。

(6)多机通信

在多处理机系统和计算机网络中,平时各结点分别执行自己的程序。当一个结点需要与另一个结点通信时,一般都以中断方式向对方提出请求,而后者也以中断方式进行回答响应。

(7)指令中断

在8O88指令系统中有两条指令:INT type和INTO。尤其是INT type指令,它利用中断处理方式为用户调用DOS功能提供十分便利的手段。

可见,中断方式不仅用于I/O设备的管理控制,还广泛地应用于各种带随机性质的事件处理上。

豫ICP备19006514号 网站地图 免责声明:如果侵犯了你的权益,请发邮件至:419017772@qq.com,我们会及时删除侵权内容,谢谢合作!