根据this source(3 - 5级)特定的CPU环不能做某些事情,如环1,2,3代码无法设置GDT,因为os内核会崩溃。
虽然很明显Ring 0可以执行所有指令,我想知道哪些指令不能在第1,2和3环中发出?
我无法在维基百科或osdev以及类似的来源上找到任何内容,这些来源会说明在特定的环中无法发出哪些指令。
答案 0 :(得分:2)
以下说明无法在第3环中执行:
LGDT
LLDT
LTR
LIDT
MOV (to and from control registers only)
MOV (to and from debug registers only)
LMSW
CLTS
INVD
WBINVD
INVLPG
HLT
RDMSR
WRMSR
RDPMC
RDTSC