问题 问答题

阅读以下关于中断的叙述。

[说明]


在某嵌入式系统中,王工设计的计算机模块如图4-1所示。它要求CPU在执行完当前指令后转而对中断请求进行处理。假定:TDC为查询链中每个设备的延迟时间,Ta、Tb、Tc分别为设备A、B、C的中断服务程序所需的执行时间,TS和TR为保存现场和恢复现场所需的时间。


本系统不允许中断嵌套,如果CPU响应中断,则中断处理过程按照如下流程执行,将(1)~(5)的内容填入答题纸上相应的位置。
中断处理过程流程:
a. CPU检查响应中断的条件是否满足;
b.如果CPU响应中断,则 (1)
c. (2)
d.分析中断原因;
e. (3)
f.退出中断, (4)
g. (5) ,CPU继续执行。

答案

参考答案:(1)CPU关中断
(2)保存中断现场
(3)执行中断处理程序
(4)恢复现场
(5)开中断

解析: 如果系统设计时不允许中断嵌套,当系统产生中断后,CPU响应中断的流程如下:
a) CPU检查响应中断的条件是否满足;
b)如果CPU响应中断,则CPU先先中断;
c)保存中断现场,为了使中断处理程序不影响主程序的运行,要把发生中断时的任务上下文现场保存起来,当中断处理完成返回主程序时,CPU能够恢复主程序在中断前的状态,保证主程序的正确运行。
a)分析中断原因,根据中断向量得到中断处理程序入口地址;
b)执行中断处理程序;
c)退出中断,恢复现场;
d)开中断,CPU继续执行。
如果系统设计时允许中断嵌套,那么CPU响应中断的流程比上述流程复杂一些。

解答题
单项选择题