设某计算机有四个中断源,优先顺序按1→2→3→4降序排列,若1,2,3,4中断源的服务程序中对应的屏蔽字分别为11 lO,0100,OllO,11 1 1,试写出这四个中断源的中断处理次序(按降序排列)。若四个中断源同时有中断请求,画出CPU执行程序的轨迹

admin2014-07-18  23

问题 设某计算机有四个中断源,优先顺序按1→2→3→4降序排列,若1,2,3,4中断源的服务程序中对应的屏蔽字分别为11 lO,0100,OllO,11 1 1,试写出这四个中断源的中断处理次序(按降序排列)。若四个中断源同时有中断请求,画出CPU执行程序的轨迹。

选项

答案由于屏蔽码的作用,中断处理次序将发生变化。 1的屏蔽字1110,说明可以中断2,3,不能中断4; 2的屏蔽字0100,说明不可以中断其他进程,优先级最低; 3的屏蔽字0110,说明可以中断2,不能中断1,4; 4的屏蔽字1l 11,说明可以中断所有进程,优先级最高。 因此,中断处理次序(按降序排列)为:4→1→3→2,CPU执行程序的轨迹如下图所示: [*] 1,2,3,4级中断源的中断请求同时出现,根据中断响应次序,首先响应第1级中断,但进入中断服务程序1之后,发现其屏蔽字为1110,即对第4级中断开放,所以应先执行中断服务程序4,当中断服务程序4执行完毕,再返回执行中断服务程序1。接下来还剩下第2和3级中断,仍然先响应第2级中断,但进入中断服务程序2之后,发现其屏蔽字为0100,对第3级中断开放,所以应先执行中断服务程序3,当中断服务程序3执行完毕,再返回执行中断服务程序2。

解析
转载请注明原文地址:https://kaotiyun.com/show/X4xi777K
0

最新回复(0)