常见的中断源有如下几种:

  1.由外围设备引起的中断

  通常包括:低速外围设备的数据缓冲寄存器已经准备好接收或发送数据,高速外围设备采用DMA方式完成一个数据块传送之后的处理工作,外围设备的启动和停止,完成对外围设备的控制(如磁盘和磁带存储器的定位等),输入输出过程种任意一个环节出现错误等。

  2.由处理机本身产生的中断

  包括算术运算操作溢出、除数为零、数据校验错、非法数据格式等。响应中断后进入监控程序,处理机处于动态停机状态,等待操作员给予处理,或者返回到用户程序,等待用户修改程序或数据。

  3.由存储器产生的中断

  主要有非法地址(包括地址越界、地址不存在、写ROM地址等)、动态随机存储器(DRAM)刷新、主存储器页面失效、数据或地址校验错、访问主存储器超时错等。

  4.由控制器产生的中断

  主要包括非法指令、未定义的操作码、用户程序执行了特权指令、堆栈溢出、分时系统中时间片到、操作系统用户态与特权态的切换等。

  5.由总线产生的中断

  包括输入输出总线出错和存储器总线出错等。通常有总线超时错误、总线故障错误等。

  6.实时过程控制产生的中断

  通常有实时检测设备的数据采样中断、为某些实时控制设备发送各种控制信号等。

  7.实时钟的定时中断

  时钟是计算机系统中的一个重要部件,处理机的运行和对外联系都要用到时钟。一般要通过中断系统来管理机器内部的实时钟。

  8.其他处理机发来的中断

  在多处理机系统中,从其它处理机发送来的中断服务请求,还包括由控制台开关引起的中断等。

  9.程序断点引起的中断

  在程序调试过程中,执行完一条指令或程序运行到一个实现事先设置的断点时,通过中断进入监控程序,以便对被调试程序进行跟踪或监测。

  10.硬件故障中断

  通过监控程序调用诊断程序对机器的各个部分进行诊断,如果诊断没有错误则重新引导机器,否则停机。

  11.电源故障中断

  这时必须停止其它一切工作,保存处理机的全部状态信息和挥发性存储器中的内容。