异步通信可以发出两种中断

异步通信可以发出两种中断,第1张

两种中断如下:

中断有两种,一种是CPU本身在执行程序的过程中产生的,一种是由CPU外部产生的。外部中断,就是通常所讲的“中断”(interrupt)。对于执行程序来说,这种"中断的发生完全是异步的,因为不知道什么时候会发生。CPU对其的响应也完全是被动的,可以通过“关中断”指令关闭对其的响应。由软件产生的中断一般是由专设的指令,如X86中的INTn"在程序中有意产生的,是主动的,同步的。只要CPU执行条INT指令,在开始执行下一条指令之前一定会进入中断服务程序。这种主动的中断称为“陷阱”(trap)。

命令接口。

trap指令

trap指令,即陷阱指令是CPU的内部事件,是由于系统调用引起处理机中断的指令。

在系统调用中,TRAP负责由用户模式转换为内核模式,并将返回地址保存至堆栈中以备后用。

陷阱标志(TRAP FLAG,TF),用于调试时的单步方式 *** 作。当TF位为1时,每条指令执行完后产生陷阱,由系统控制计算机;当TF位为0时,CPU正常工作,不产生陷阱。

陷阱通常由处理机正在执行的现行指令引起,而中断则与现行指令无关的中断源引起。

陷阱处理程序提供的服务为当前进程所用,而中断处理程序的服务不是为了当前进程的。

CPU执行一条指令后,下一条指令执行开始前响应中断,而一条指令执行中也可以响应陷阱,如错误指令处理。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11590780.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存