被面试官问,操作系统什么情况会导致处理器从目态向管态转换?
什么情况会导致处理器从用户态(目态)向内核态(管态)转换?
大多数计算机系统将CPU执行状态分为
管态和目态。
管态又称为特权状态、系统态或核心态。通常,操作系统在管态下运行。
目态又叫做常态或用户态,用户程序只能在目态下运行,如果用户程序在目态下执行特权指令,硬件将发生中断,由操作系统获得控制,特权指令执行被禁止,这样可以防止用户程序有意或无意的破坏系统。
从目态转换为管态的唯一途径是中断。以下这三类情况都是通过
中断机制发生,可以说中断和异常(应用程序自身引起or出错)是用于态到内核态转换的仅有途径:
- 程序主动请求操作系统服务,执行系统调度;
- 程序运行时产中断事件(如I/O操作完成),运行程序被中断,转向中断处理程序处理;
- 程序运行时产生异常事件(如发生程序性中断,或目态执行特权指令),运行程序被打断,转向异常处理程序工作。
查看1道真题和解析
