用户态到和核心态的转换是由什么完成的?
问题:
当计算机区分了核心态和用户态指令之后,从核心态到用户态的转换是由操作系统程序执行后完成的,而用户态到核心态的转换则是由( )完成的。A.硬件 B.核心态程序 C.用户程序 D.中断处理程序
解答:
A选项正确。计算机通过硬件中断机制完成由用户态到核心态的转换。B显然不正确,核心态程序只有在操作系统进入核心态后才可以执行。D中的中断处理程序一般也在核心态执行,故无法完成“转换成核心态”这一任务。如果由用户程序将操作系统由用户态转换到核心态,那么 用户程序中就可以使用核心态指令,也就会烕胁到计算机的安全,所以C不正确。
计算机通过硬件完成操作系统由用户态到核心态的转换,这是通过中断机制来实现的。 发生中断事件时(有可能是用户程序发出的系统调用),触发中断,硬件中断机制将计算机状态置为核心态。