Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Define uma categoria de estado salvo em um processador virtual.
Sintaxe
// WHvGetVirtualProcessorState and WHvSetVirtualProcessorState types.
#if defined(_AMD64_)
typedef enum WHV_VIRTUAL_PROCESSOR_STATE_TYPE
{
WHvVirtualProcessorStateTypeSynicMessagePage = 0x00000000,
WHvVirtualProcessorStateTypeSynicEventFlagPage = 0x00000001,
WHvVirtualProcessorStateTypeSynicTimerState = 0x00000002,
WHvVirtualProcessorStateTypeInterruptControllerState2 = 0x00001000,
WHvVirtualProcessorStateTypeXsaveState = 0x00001001,
WHvVirtualProcessorStateTypeNestedState = 0x00001002,
} WHV_VIRTUAL_PROCESSOR_STATE_TYPE;
#elif defined (_ARM64_)
#define WHV_VIRTUAL_PROCESSOR_STATE_TYPE_PFN (1ui32 << 31)
#define WHV_VIRTUAL_PROCESSOR_STATE_TYPE_ANY_VP (1ui32 << 30)
typedef enum WHV_VIRTUAL_PROCESSOR_STATE_TYPE
{
WHvVirtualProcessorStateTypeInterruptControllerState = 0x00000000 | WHV_VIRTUAL_PROCESSOR_STATE_TYPE_PFN,
WHvVirtualProcessorStateTypeSynicMessagePage = 0x00000002 | WHV_VIRTUAL_PROCESSOR_STATE_TYPE_PFN,
WHvVirtualProcessorStateTypeSynicEventFlagPage = 0x00000003 | WHV_VIRTUAL_PROCESSOR_STATE_TYPE_PFN,
WHvVirtualProcessorStateTypeSynicTimerState = 0x00000004,
WHvVirtualProcessorStateTypeGlobalInterruptState = 0x00000006 | WHV_VIRTUAL_PROCESSOR_STATE_TYPE_PFN | WHV_VIRTUAL_PROCESSOR_STATE_TYPE_ANY_VP,
WHvVirtualProcessorStateTypeSveState = 0x00000007 | WHV_VIRTUAL_PROCESSOR_STATE_TYPE_PFN,
} WHV_VIRTUAL_PROCESSOR_STATE_TYPE;
#endif
HRESULT
WINAPI
WHvSetVirtualProcessorState(
_In_ WHV_PARTITION_HANDLE Partition,
_In_ UINT32 VpIndex,
_In_ WHV_VIRTUAL_PROCESSOR_STATE_TYPE StateType,
_In_reads_bytes_(BufferSizeInBytes) const VOID* Buffer,
_In_ UINT32 BufferSizeInBytes
);
Parameters
Partition
Manipule para o objeto de partição.
VpIndex
Especifica o índice do processador virtual cujo estado está definido.
StateType
Especifica a categoria de estado a ser definida. Consulte WHvGetVirtualProcessorState o significado de cada valor.
Buffer
Especifica o estado a ser aplicado. O formato do buffer depende StateTypede .
BufferSizeInBytes
Especifica o tamanho de Buffer, em bytes. O tamanho deve corresponder ao tamanho do estado identificado por StateType.
Valor de retorno
Se a função for bem-sucedida, o valor retornado será S_OK.
A função retornará E_INVALIDARG se StateType não for um tipo de estado válido.
Remarks
A WHvSetVirtualProcessorState função aplica uma categoria de estado do processador virtual identificado por StateType. É o equivalente de WHvGetVirtualProcessorState.
Ao contrário da operação get, o buffer fornecido para a operação de conjunto deve ser exatamente o tamanho do estado que está sendo restaurado.
Requisitos
| Requirement | Value |
|---|---|
| Suporte mínimo Windows | Windows 10, versão 20H2 (x64); Windows 11, versão 24H2, build 26100.3915 (Arm64) |
| Header | WinHvPlatform.h |
| Biblioteca | WinHvPlatform.lib |
| DLL | WinHvPlatform.dll |
| Arquitetura | x64, Arm64 |
Consulte também
WHvGetVirtualProcessorStateWHvSetVirtualProcessorXsaveStateWHvSetVirtualProcessorInterruptControllerState- Nomes e valores de registro do processador virtual
- definições de API da Plataforma do Hipervisor Windows