RSM
从系统管理模式恢复
stableVMJITAOTinstruction
编码
| 操作码 | 指令 | Op/En | 64 位 | 兼容/传统 | 说明 |
|---|---|---|---|---|---|
0F AA | RSM | ZO | 有效 | 有效 | 恢复中断程序的运行 。 |
实测开销
正在从 arch-data 加载实测数据...
说明
将系统管理模式(SMM)的程序控制返回到处理器收到SMM中断时中断的应用程序或操作系统程序. 处理器状态从输入SMM时创建的垃圾堆恢复. 如果处理器在状态恢复过程中检测到无效状态信息,则会进入关闭状态. 下列无效信息可导致关闭 :
- 任何预留的 CR4 位被设定为 1. CR0中任意非法组合位元,如(PG=1和PE=0)或(NW=1和CD=0). (仅Intel Pentium和Intel486TM处理器. )存储在状态倾卸基场的值不是32-KByte.
对齐地址。
模型特定登记册的内容不受SMM返回的影响。
RSM使用的SMM状态地图支持恢复非64位模式和64位模式的处理器上下文.
参见第34章,"系统管理模式",见Intel(R)64和IA-32架构软件开发者手册,第3C卷,关于SMM和RSM指令行为的更多信息.
行动
ReturnFromSMM;
IF (IA-32e mode supported) or (CPUID DisplayFamily_DisplayModel = 06H_0CH )
THEN
ProcessorState := Restore(SMMDump(IA-32e SMM STATE MAP));
Else
ProcessorState := Restore(SMMDump(Non-32-Bit-Mode SMM STATE MAP));
FI受影响的旗帜
All.
异常
保护模式
#UD | 如果在处理器不在 SMM 时试图执行此指令。 如果使用 LOCK 前缀 。 |
#GP(0) | 如果CPL > 0和IA32_CORE_CAPABILITIES.RSM_IN_CPL0_ONLY[bit 3]=1. |
实地址模式
#UD | 如果在处理器不在 SMM 时试图执行此指令。 如果使用 LOCK 前缀 。 |
虚拟 8086 模式
#UD | 如果在处理器不在 SMM 时试图执行此指令。 如果使用 LOCK 前缀 。 |
#GP(0) | 如果 IA32_CORE_CAPABILITIES.RSM_IN_CPL0_ONLY[bit 3] = 1. |
兼容模式
| 与保护模式中的例外相同. |
64 位模式
| 与保护模式中的例外相同. |