发布网友 发布时间:2022-04-20 09:07
共1个回答
热心网友 时间:2023-06-26 01:57
可屏蔽中断处理的一般过程:
1、接口发出中断请求。
2、当前指令执行完后,CPU响应中断。
3、中断类型号 N送CPU。
4、当前的EFR CS HE EIP 推入栈。
5、清除 IF(中断允许标志位,IF=0,禁止CPU响应外部中断请求,IF=1,允许响应) 和TF(跟踪标志,也称单步执行,CPU按跟踪方式执行)。
6、由中断类型号,查中断向量表获得中断服务子程序的入口地址。
7、CPU执行中断子程序。
8、开中断。
9、IRET指令使EIP CS HE EFR弹出栈 ,返回被中断的源程序。
扩展资料
可屏蔽中断由有中断能力的外围设备所产生,包括处在定时模式的定时器溢出。每个可屏蔽中断源可以由中断使能位所单独关闭,或者由由状态寄存器中的通用中断使能位GIE一齐关闭。
可屏蔽中断INTR的特点是它可以通过CPU用CLI来禁止,也可用指令STI来允许,只有在INTR被允许时,CPU才发中断响应信号INTA,这时中断源一定要向CPU提供中断类型号,以使找到中断服务入口程序。
而不可屏蔽中断NMI的特点是不能被CPU用指令禁止,这种中断一旦出现CPU就会立即响应。它主要用于紧急情况的故障处理,并由系统使用,一般用户不能使用。