您的位置:首页 > 其它

如何使运行于用户空间的CPU转入系统空间

2014-11-06 15:05 211 查看
【1】、中断(Interrupt)。在开启了终中断机制的情况下,只要外部设备的请求的到来,CPU就自动转入系统空间,并从系统空间的某个预定的地址开始执行指令,从而可以在系统空间对外部设备的中断请求做出反应,或者说提供服务。中U盾那发生在两条指令之间,而不会使正在执行的指令半途而废。

【2】、异常(Exception)。 不管是在用户空间还是系统空间,指令执行失败都会引发一次异常,CPU也会因此转入系统空间,并从某个预定的地址开始执行指令。异常在形式上与终端非常相似,只是异常发生在执行一条指令的过程中,而不是两条指令之间。所以当前的指令执行已经半途而废。

【3】、自陷(Trap)。为了让CPU能够主动的进入系统空间,绝大多数CPU都设有专门的自陷指令,系统调用通常就是靠自陷实现的,一执行这样的指令,CPU就转入系统空间,从一个制定的地址执行开始执行指令。自陷指令在形式上也与终端相似,就像是CPU主动发出的中断请求。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐