内核态和用户态

2020-08-20 15:34:12 浏览数 (1)

内核态(也称管态,核心态):

内核态具有对硬件的完全访问权,可以执行机器能够执行的任何指令。

用户态:

只能执行机器的部分指令,使用全部指令集的一个子集。能影响机器的控制指令或者是I/O操作指令,在用户态都是不被允许的。当然也不能更改PSW中模式位为内核态。

用户程序为了获取操作系统服务,必须使用系统调用。系统调用陷入内核并调用操作系统。TRAP指令把用户态切换成内核态,并启用操作系统。

程序计数器(PC):

它保存下一条将要执行的指令在内存中的地址。在指令被取出之后,程序计数器就需要更新。

堆栈指针(SP):

它指向内存中当前栈空间的顶部。该栈空间保存每个进程中需要保存的相关信息。

程序状态字(PSW):

它包含了CPU优先级,模式(内核态或者用户态),条件码位,以及各种其他控制位。通常在PSW中有1个二进制位用来控制CPU处于内核态还是用户态。

0 人点赞