码迷,mamicode.com
首页 > 其他好文 > 详细

中断和异常的再总结

时间:2020-03-24 15:56:58      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:版权   abort   应用程序   外部   net   处理程序   时钟   越界   体系   

中断和异常的再总结

@(OS)

内部异常(内中断)

故障(fault)
自陷(trap)
终止(abort)
是源自CPU执行指令内部的事件。如:非法操作码,地址越界,算术溢出,虚存系统的缺页,陷入指令等引起的事件。内部异常不可被屏蔽,一旦出现立马处理。

外中断:来自CPU执行指令以外的事件。如:I/O中断,时钟中断等。

在操作系统层次上,我们多听到“异常”(Exception)而少见“中断”(Interrupt),且往往笼统地称其为异常,但处理器微体系结构规范通常会区分中断和异常。

一般而言,中断是异步的,异常是同步的,所谓同步和异步的概念,又与我们网络通信或函数调用中的同步异步有所不同。中断是来自处理器外部的I/O设备的信号的结果,它不是由指令流中某条指令执行引起的,从这个意义上讲,它是异步的,是来自指令流之外的。

异常又分为三类:陷阱(Trap)、故障(Fault)和终止(Abort),它们都是执行当前指令流中的某条指令的结果,是来自指令流内部的,从这个意义上讲它们都是同步的。

陷阱是有意而为之的异常,是明知有套还往里钻——人家要的就是这个结果,其最常见的用途就是操作系统的系统调用。

故障是由错误条件引起的,可能被故障处理例程修复。如果可以修复,则啥事儿没有,继续干活;如果不能修复则会转化为终止,并进入下一步。常见的故障如缺页。

终止是不可恢复的致命的错误造成结果。终止处理程序不再将控制返回给引发终止的应用程序,而是交给了系统——其结果往往是系统终止应用程序。
————————————————
版权声明:本文为CSDN博主「DrCrypto」的原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011240016/article/details/53117093

中断和异常的再总结

标签:版权   abort   应用程序   外部   net   处理程序   时钟   越界   体系   

原文地址:https://www.cnblogs.com/feng9exe/p/12559229.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!