中断系统分类
作者:互联网
概述
为什么要中断呢?图灵机不中断,但是中断也有好处,它可以实现CPU和IO的并行工作,提高CPU的效率。并且有些中断是不可避免的,比如电脑突然爆炸了,或者停电了,如果每次中断后都要重新开始,那真是累死了呢。所以我们需要一些机制和策略。
中断因素
1、人为中断
程序运行累了,开摆了,程序自愿说停停,我运行到这里中断以下,可以实现断点调试,或者函数递归调用等。
比如实现程序的并发需要不停的中断。
2、程序性事故
比如程序运行到一段时间自己觉得不合礼法,不想再运行了,就中断了,就像catch exception一样。比如定点溢出,浮点溢出,操作码不能识别,除法分母为0等。程序就会感到困惑,害怕,然后中止运行。
3、硬件故障
电脑被砸了,太惨了,要寿终正寝了。
4、I/O设备
IO设备被启动后,一旦准备就绪,便向CPU发出中断请求。每个IO设备都能发中断请求,因此这种中断与计算机所配置的IO设备多少有关。
IO设备有程序自愿调用的,也有强势插入的,所以这个分类更像一个对造成对象的界定。
比如程序运行过程中需要一个输入或输出才能继续进行。
5、外部事件
其实程序运行好好的没想停止,可是用户或者其他进程等不及了,快点啊麻溜的,所以程序不得已中断。可能发生在任何时间任何部分。喊话让当前程序滚出去的叫做中断源,中断源可以分为不可屏蔽中断,比如电源掉电;另一类叫做可屏蔽中断,比如进程抢占。对于可屏蔽的中断CPU有最终裁决权。
分类还是很乱,用一张图描述以下吧
标签:程序运行,中断,程序,IO,系统分类,比如,CPU 来源: https://www.cnblogs.com/EeiKo/p/16548928.html