关于中断(补充中)
1.什么是中断? 中断是由硬件或软件所发送的一种称为IRQ(中断求救)的信号,CPU会对这一信号进行响应。 2.为什么引入中断? 中断在操作系统中有着特殊重要的地位,它是多道程序得以实现的基础,没有中断就没有多道程序。另一方面也是设备管理的基础,为了提高处理机的利用率和实现CPU与I/O设备并行执行,必需有中断的支持,是整个I/O系统的基础。 3.中断什么时候发生? (1)当I/O设备向CPU发来中断信号。 (2)CPU内部的事件,如:进程在运算中发生了上溢或下溢。或者程序出错:非法指令,地址越界,电源故障等。 4.中断发生时CPU做什么,中断机制做什么? 当CPU接收到中断请求时,会对该请求进行响应,然后转向中断处理程序,由它来执行相应的处理,处理完之后解除相应进程的阻塞状态。 中断机制主要进行如下操作: (1)测定是否有未相应的中断信号 每当设备完成一个数据块(可以是一个字符或者字)的读入或输出时,设备控制器就会向处理机发送一个中断请求信号,请求将要输入的数据传送到内存缓冲区或者将要输出的数据传送到设备控制器。 每次有一道指令执行后,处理机都会检测,是否存在未响应的上面提到的设备控制器所发出的中断信号。 有的话就会停止原有进程,准备转到中断处理程序,准备将处理机的控制权交给中断处理程序。反之继续执行下一条指令 (2)保护中断进程的CPU环境 上面提到要转交处理机的控制权