11.5用中断来实现实时处理

在主程序运行的过程中,中断发生的频率有多大呢?实际上,大部分的外围设备,都会频繁地发出中断请求。其原因就是为了实时处理从外围设备输人的数据。虽然不利用中断也可以从外围设备输入数据。但那种情况下,主程序就必须要持续不断地检测外围设备是否有数据输人。

由于外围设备有很多个,因此就有必要按照顺序来调查。按照顺序调查多个外围设备的状态称为轮询。对几乎不产生中断的系统来说轮询是比较合适的处理。不过,对计算机来说就不适合了。举例来说假如主程序正在调查是否有鼠标输入,这时如果发生了键盘输入的话该如何处理呢?结果势必会导致键盘输人的文字无法实时地显示在显示器上。而通过使用中断,就可以实现实时显示了。

打印机等输出用的外围设备中,外围设备接收数据的状态,有时是需要用中断来通知的。由于外围设备的处理速度比计算机主机的处理速度要慢很多,因此,这种情况下就不需要对打印机的状态进行多次调查,只需在中断请求发生时输出数据即可,这样一来,其他时间CPU 就可以集中处理别的程序了。中断处理是不是很方便呢。

 

posted @ 2023-02-08 09:05  嘎嘎鸭~  阅读(37)  评论(0)    收藏  举报