中断,异常和系统调用
Posted kk_kk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中断,异常和系统调用相关的知识,希望对你有一定的参考价值。
系统调用:应用程序主动向操作系统发出的服务请求。(异步或同步)
异常:非法指令或其他原因导致当前指令执行失败后的处理请求。(同步)
中断:来自硬件设备的处理请求。(异步)
中断处理机制:
1.CPU初始化 中断使能, 即设置不同中断所对应的处理过程。
2.硬件:设置中断标志,依据中断向量调用相应中断服务例程(在中断向量表里查,然后调用异常服务例程或系统调用服务例程或中断服务例程)
3.软件:现场保存(编译器的工作)
中断服务处理(由上述工作相应的服务例程进行处理)
清除中断标记(服务例程)
现场恢复(编译器工作)
系统调用:程序访问通过高层次API(C,C++,java库等)来调用系统调用的方法,不是直接调用系统调用接口。函数调用和系统调用使用不同的堆栈,分为用户态和内核态。
举例:客户去银行取钱,营业员从保险柜里拿出钱,然后交由客户。而不是客户自己去保险柜里拿钱。
以上是关于中断,异常和系统调用的主要内容,如果未能解决你的问题,请参考以下文章