本文主要是介绍用户态的陷入指令(trap指令),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
陷入指令是指用户程序所依靠的指令,用于发起系统调用,请求操作系统提供服务。
陷入指令有其中一点特殊在于,其只能在用户态下执行,而不可以在核心态下执行。
用户程序执行陷入指令,相当于把CPU的使用权主动交给了操作系统内核程序(CPU状态会从用户态切换到核心态),之后操作系统内核程序再对系统调用请求做出相应的处理。处理完成后,操作系统内核程序又会把CPU的使用权还给用户程序(即CPU状态从核心态切换到用户态)。
总结一下:
- 陷入指令是再用户态执行的,执行陷入指令之后,立即引发一个内中断,从而CPU进入核心态
- 发出系统调用请求是再用户态,而对系统调用的相应处理是再核心态下进行
- 陷入指令是唯一一个只能再用户态,而不可再核心态执行的指令
这篇关于用户态的陷入指令(trap指令)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!