1.中断服务程序的流程
保护现场、中断服务、恢复现场、中断返回
# 保护现场:程序断点的保护(中断隐指令完成),寄存器内容的保护(进栈指令)。
保护程序的断点 包含了两部分内容
1).中断返回以后、去执行哪条指令、那么这条指令的地址我们要进行保存
这个就是当前PC当中、保存的指令的地址的值
2).程序执行状态
那些不能有指令直接读取的这个状态、实际上呢也是程序的断点、也需要进行保护
这部分内容是由硬件来完成的,”中断隐指令“
所谓中断隐指令实际上
它本身并不是一条指令
它是硬件要自动执行的一系列的操作,第9章
中断服务:对不同的I/O设备具有不同内容的设备服务。
恢复现场:出栈指令
恢复现场 主要是指体系结构寄存器的内容、
前面呢 我们是用进站指令进行保护的、实际上在保护的过程当中呢、不一定说必须使用进站指令
你可以把它保存在、内存单元的指定的位置
另外如果这台计算机、他内部有大量的寄存器、我们还可以把它转存到一些寄存器当中
中断返回:返回到原程序的断点处。
2.单中断和多重中断
单中断:不允许中断现行的中断服务程序
多重中断:允许更高级别的中断源,中断现行的中断服务程序。
3.单中断和多重中断的服务流程
怎样对单重中断的服务程序流程进行改进、让他能够支持多重中断方式
中断周期实际上主要做了3件事
第1 保护断点
第2 形成中断服务程序的入口地址
第3 关中断
单中断和多重中断的区别就是开中断的时间点。
4. 主程序和服务程序抢占CPU示意图
宏观上CPU和I/O并行工作
微观上CPU中断现行程序为I/O服务