中断:指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。
例子:比如说叫个外卖,一般人不会再那边一直等着外卖,当收到外卖到了消息(可以认为中断请求来了,出现了一个必须由CPU立即处理的情况),把手上的事情处理完了(CPU暂时中止程序的执行),比如说让其他人帮你暂时玩一下当前的moba游戏,再去取外卖(执行转而处理这个新的情况)。外卖取完可以边吃饭边打游戏(中断完毕回到原来的程序,再开一个辅助线程吃饭)
发生中断时CPU在中断允许的情况下,强制跳转至中断处理程序对该中断进行响应。
中断处理程序需要注意:
若是改写系统中断,尽量保存系统中断的原地址;
如果是自定义中断,需要注意是否允许多重中断,即能否被另一个中断(包括同一个中断号的相同中断)打断,若不希望被打断,应当在中断处理程序开始时关闭中断允许位IF(用CLI指令),并且在程序结束时开启中断位(用STI指令)。
另外,中断处理程序本身也是一个过程,也有可能出错,所以尽量不要在中断处理程序中产生错误,以免程序不可控。
以上就是关于有没有中断的例子,可以解释一下中断莫全部的内容,包括:有没有中断的例子,可以解释一下中断莫、什么是中断处理程序编写中断处理程序时要注意哪些问题、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)