当CPU上的工作负载进入内核模式时,CPU本身也相应进入保护模式(Ring 0)。
在开启超线程的机器上,保护模式的控制范围是逻辑核心级别还是物理核心级别?
必须针对每个逻辑核心;替代方案将无法使用。 逻辑核心应该能够运行独立运行的不同线程或进程,包括能够彼此独立地进行系统调用和进入/退出内核。
通过为每个逻辑核心提供自己的相关控制和描述符表寄存器的副本,可以轻松实现这一点,通过检查这些寄存器来确定指令是否成功或生成保护故障。 然后,只需在这些寄存器中具有不同的值,不同的逻辑核心就可以处于不同的模式。