Arm64 重置退出

虚拟处理器重置请求导致 Arm64 退出的上下文数据。

注释

此退出原因及其上下文结构仅适用于 Arm64 分区。

Syntax

//
// Context data for an exit caused by a reset request
// (WHvRunVpExitReasonArm64Reset)
//
typedef enum WHV_ARM64_RESET_TYPE
{
    WHvArm64ResetTypePowerOff = 0,
    WHvArm64ResetTypeReboot
} WHV_ARM64_RESET_TYPE;

typedef struct WHV_ARM64_RESET_CONTEXT
{
    WHV_INTERCEPT_MESSAGE_HEADER Header;
    WHV_ARM64_RESET_TYPE ResetType;
    UINT32 Reserved;
} WHV_ARM64_RESET_CONTEXT;

Remarks

结构中 WHV_ARM64_RESET_CONTEXT 提供了有关来宾请求重置的退出的信息。 出口报告有 WHvRunVpExitReasonArm64Reset 退出原因(0x8001000c)。

成员 Header 是一个 WHV_INTERCEPT_MESSAGE_HEADER,在请求时报告程序计数器(Pc)和保存的处理器状态(Cpsr)。

ResetType 成员是一个 WHV_ARM64_RESET_TYPE 值,指示请求的来宾重置类型:

  • WHvArm64ResetTypePowerOff — 来宾请求关闭电源。
  • WHvArm64ResetTypeReboot — 来宾请求重新启动。

虚拟化堆栈负责执行请求的操作,例如,通过拆毁或重新初始化分区。

另见