例子:比如说叫个外卖,一般人不会再那边一直等着外卖,当收到外卖到了消息(可以认为中断请求来了,出现了一个必须由CPU立即处理的情况),把手上的事情处理完了(CPU暂时中止程序的执行),比如说让其他人帮你暂时玩一下当前的moba游戏,再去取外卖(执行转而处理这个新的情况)。外卖取完可以边吃饭边打游戏(中断完毕回到原来的程序,再开一个辅助线程吃饭)
中断大概是这样的。。。如果有点错误不要怪我。。。我以前作过鼠标中断的东西。。现在有些想不起来了。。。所以。。。呵呵呵。。。当程序运行到中断条件的时候,会向CPU发信号改变优先级(原先运行的东西会放进哪个特定的地方的,作保存),以发出中断的那段程序作为最高优先,执行完成后再由执行另外的。。。建议你去看看汇编。。。哈哈哈。。。我没学过的。。。
C中实现中断是用了一个函数:geninterrupt(...)
这个“...”是个16进制的数字,是中断号,像鼠标中断号就是0x33
还要用到类似汇编里寄存器模样的变量:如_AX,_BX,_CX,_DX...不同的值功能不同。。。哎呀,我都忘完了。。。建议去查下geninterrupt()的用法就OK了。。。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)