实现方法:在中断服务程序的起始部分用一段程序来保存现场、送新屏蔽字以屏蔽同级别和低级别的中断请求、然后开中断,这样CPU就可响应更高级别的中断请求,实现多重中断。
单重中断和多重中断服务程序开中断的时刻在:1、多重中断处理过程包括,保护现场,送新屏蔽字,开中断,具体服务,关中断,恢复现场,开中断。
2、单重中断包括,保护现场,具体服务,恢复现场,开中断,单重中断没有送屏蔽字、开中断及关中断的过程。
中断处理过程:(1)保护被中断进程现场。为了在中断处理结束后能够使进程准确地返回到中断点,系统必须保存当前处理机程序状态字PSW和程序计数器PC等的值。(2)分析中断原因,转去执行相应的中断处理程序。在多个中断请求同时发生时,处理优先级最高的中断源发出的中断请求。(3)恢复被中断进程的现场,CPU继续执行原来被中断的进程。保存和恢复现场的意义在于处理完中断请求之后,程序可以返回起始中断点继续进行。
打个比方:
一个程序正在运行,但是有一个紧急事情要先去处理。但是程序是不能放弃现在运行到的阶段,所以在处理紧急事件时(就是中断),那么先要将运行到的地方进行一个现场保护,您可以理解为存储下来。然后去处理中断,中断结束之后要恢复原来的运行到的阶段。那么就需要将促出下来的现场保护给恢复出来。那这个就是恢复现场了。同样,出现多个中断的时候,要视中断的优先级来优先处理。
中断是现在衡量处理器性能重要标准之一。楼主要好好学习!
希望这些能够有所帮助!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)