特权指令(Privileged Instructions)

特权指令(Privileged Instructions)

Content #

不同特权级别的程序,所担负的职责以及在系统中扮演的角色是不一样的。计算机系统的脆弱性在于一条指令就能改变它的整体运行状态,比如停机指令hlt 和对控制寄存器CR0 的写操作,像这样的指令只能由最高特权级别的程序来做。

因此,那些只有在当前特权级CPL 为0 时才能执行的指令,称为特权指令(Privileged Instructions)。典型的特权指令包括

  1. 加载全局描述符表的指令lgdt(它在实模式下也可执行)
  2. 加载局部描述符表的指令lldt
  3. 加载任务寄存器的指令ltr
  4. 读写控制寄存器的mov指令
  5. 停机指令hlt。

From #