PC 中断的概念

本文内容

CPU 对 IO 进行操作通常采用轮询的工作方式。在这种方式下,若 CPU 纠结在某一个 IO 上,则一直等待它的响应,如果它不响应,CPU 就在原地一直等下去。这样导致其他 IO 口也在等待 CPU 的服务,如果某个 IO 出现了异常情况或特殊要求,CPU 也不能去响应这个 IO。当出现以上的情况怎么办呢?

为了解决这类情况,计算机采用一种先进的管理机制:CPU 停止现行运行程序,转向对这些异常情况或特殊请求的处理,处理结束后再返回到现行程序的间断处,这种机制称为“中断”。中断是现代计算机不可缺少的技术。随着计算机系统结构的日益复杂以及应用技术的不断提高,“中断”一词的概念已不局限于外部设备提出服务请求这一范围,其定义已同时延伸到外部中断和软件中断等中断领域,这三种类型构成了一个完整的计算机中断系统。

当计算机正在执行程序时,系统发生了内部事件或外部事件的请求,要求 CPU 进行处理,这时,CPU 暂停现行程序执行,转去执行该事件的处理程序,待处理完毕,又返回到被中断的程序继续执行,这一过程叫中断。事件的处理程序称为中断处理程序或中断服务程序(也叫中断驱动程序),引起中断的事件称为中断源。每个中断源都要有自身的中断处理程序,以完成中断源要求的处理。

从上面的定义可知,中断实际上是一种控制转移机制,但又完全不同于 JMP 和 CALL 指令的转移。不论是 JMP 指令还是 CALL 指令,它们总是在现行的程序控制下被启动,而中断是由现行程序以外的某个事件强制产生的转移,中断的产生是随机的、意外的、突发的。正因为如此,引入中断机制,能使计算机在处理一个任务的过程中间,根据中断源请求随机地执行其他任务,而又不影响原来任务的正确执行,使系统具有实时处理多个任务的能力。要掌握中断技术,就要掌握和解决 PC 中断系统的构成、中断管理机制、中断服务程序的编程方法和对系统提供的中断服务程序的应用等问题。

请参阅

(完)

comments powered by Disqus

本文内容