中断,异常和系统调用

Posted kk_kk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中断,异常和系统调用相关的知识,希望对你有一定的参考价值。

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

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

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

中断处理机制:

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

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

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

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

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

     现场恢复(编译器工作)

 

     系统调用:程序访问通过高层次API(C,C++,java库等)来调用系统调用的方法,不是直接调用系统调用接口。函数调用和系统调用使用不同的堆栈,分为用户态和内核态。

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

 

      

      

 

以上是关于中断,异常和系统调用的主要内容,如果未能解决你的问题,请参考以下文章

操作系统一3中断和异常,系统调用

操作系统一3中断和异常,系统调用

操作系统一3中断和异常,系统调用

Linux中断 异常 系统调用 中断上半部 中断下半部 这些有啥区别和联系

中断异常和系统调用

中断异常和系统调用