什么是中断响应条件

来源:百度知道 编辑:UC知道 时间:2024/05/17 00:40:42
如题

CPU响应中断条件:
1、有中断源发出的中断请求;
2、中断总允许位EA=1,即CPU开中断;
3、申请中断的中断源的中断允许位为1,即中断没有被屏蔽;
4、无同级或更高级中断正在被服务;
5、当前的指令周期已经结束.

必须满足4个条件:
1:一条指令执行结束
2:CPU处于开中断状态
3:当前没有发生复位,保持和非屏蔽中断请求
4:若当前执行的指令是开中断指令和中断返回指令,则它们执行完后再执行一条指令,CPU才能响应INTR请求

需要的条件有:



1.中断源如何向CPU表达中断请求

一般是设置中断请求触发器,在需要CPU服务时,将中断请求触发器置位,其1端或0端输出的跳变作为中断请求信号。显然中断源可以随时提出中断请求。

2.中断请求何种情况下才可能得到CPU响应

一个中断请求在同时具备下列两个条件时,才有可能得到CPU响应:

①该中断源未被屏蔽;

②该中断请求在当前所有中断请求中级别最高。

3.CPU何时响应中断

CPU在同时满足下列两个条件时,响应中断:

①IF=1(对非屏蔽中断,没有此项要求);

②现行指令执行完。

CPU在每一个指令周期的最后一个总线周期的最后一个时钟周期的开始采样中断请求输入线,若有中断请求,则下一步不进入取指令周期,而进入中断响应周期,如图5.1所示。对于8086系列CPU,中断响应周期为两个。

之所以把一条指令执行完作为响应中断的条件,是因为中断响应周期以及中断服务程序要占用CPU资源。如果在执行一条指令的中间响应中断,则指令的当前状态既不能保存也无法加以恢复。与此相对比,DMA操作是在DMA控制器的作用下进行的,不占用CPU资源,所以在一条指令执行中间、当前总线周期结束即可进入DMA周期。



你直接按键盘上的ctrl+alt+del
之后就出来了个任务管理器
你只需选中未响应的程序
然后点击“结束进程”就可以结束未响应的程序了