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

中断,异常和系统调用

时间:2016-05-22 10:47:54      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:

系统调用:应用程序主动向操作系统发出的服务请求。(异步或同步)

异常:非法指令或其他原因导致当前指令执行失败后的处理请求。(同步)

中断:来自硬件设备的处理请求。(异步)

技术分享

中断处理机制:

  1.CPU初始化 中断使能, 即设置不同中断所对应的处理过程。

  2.硬件:设置中断标志,一句中断向量调用相应中断服务例程(在中断向量表里查,然后调用异常服务例程或系统调用服务例程或中断服务例程)

  3.软件:现场保存(编译器的工作)

     中断服务处理(由上述工作相应的服务例程进行处理)

     清除中断标记(服务例程)

     现场恢复(编译器工作)

 

系统调用:程序访问通过高层次API(C,C++,java库等)来调用系统调用的方法,不是直接调用系统调用接口。

     函数调用和系统调用使用不同的堆栈,分为用户态和内核态。

举例:客户去银行取钱,营业员从保险柜里拿出钱,然后交由客户。而不是客户自己去保险柜里拿钱。

 

      

      

 

中断,异常和系统调用

标签:

原文地址:http://www.cnblogs.com/kkkkkk/p/5516220.html

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