(个人学习总结而已)
中断就是程序在执行的过程中,因为需要,cpu停下手头工作去做其他的事情。包括硬件提出的中断(外中断:去处理硬件的请求),和程序提出的中断(内中断:异常导致的,和主动进入的)。程序提出的,一般是在用户态提出要使用操作系统的功能(即系统调用),则必须中断,以进入内核态。
3、进入内核态,有栈的切换:
6、磁盘将数据传入数据缓冲器DBR,开始中断请求:根据当前磁盘对应的屏蔽字,来确定是否将接口中的状态寄存器里的INTR置为1。假设此时P2的某条指令正在执行,刚结束执行周期时,cpu会查询中断,此时可设置新的屏蔽字,来确定多个中断源的优先级,再通过排队器确定一个中断源进入中断: