Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La hiperllamada HvCallGetVpRegisters lee el estado de un procesador virtual.
Interfaz
HV_STATUS
HvCallGetVpRegisters(
_In_ HV_PARTITION_ID PartitionId,
_In_ HV_VP_INDEX VpIndex,
_In_ HV_INPUT_VTL InputVtl,
_Inout_ UINT32* RegisterCount,
_In_reads_(*RegisterCount) const HV_REGISTER_NAME* RegisterNameList,
_Out_writes_(*RegisterCount) HV_REGISTER_VALUE* RegisterValueList
);
El estado se devuelve como una serie de valores de registro, cada uno correspondiente a un nombre de registro proporcionado como entrada.
Restrictions
- El autor de la llamada debe ser el elemento primario de la partición especificada por PartitionId o la partición especificada debe ser "self" y la partición debe tener el privilegio AccessVpRegisters.
Código de llamada
0x0050 (Rep)
Parámetros de entrada
| Nombre | Desplazar | Tamaño | Información proporcionada |
|---|---|---|---|
PartitionId |
0 | 8 | Especifica el identificador de partición. |
VpIndex |
8 | 4 | Especifica el índice del procesador virtual. |
TargetVtl |
12 | 1 | especifica el VTL de destino. |
| RsvdZ | 13 | 3 |
Elemento Input List
| Nombre | Desplazar | Tamaño | Información proporcionada |
|---|---|---|---|
RegisterName |
0 | 4 | Especifica el nombre de un registro que se va a leer. |
Elemento Output List
| Nombre | Desplazar | Tamaño | Información proporcionada |
|---|---|---|---|
RegisterValue |
0 | 16 | Devuelve el valor del registro especificado. |
Lista de registros anticipados (ARM64)
En ARM64, se pueden leer determinados registros con esta hiperllamada antes de que el registro de identificador de sistema operativo invitado (HvRegisterGuestOsId) esté establecido en un valor distinto de cero. Esto permite el acceso anticipado a la información del hipervisor y a los registros críticos del sistema durante el proceso de arranque.
Se permite leer los registros siguientes antes de la identificación del sistema operativo invitado:
| Nombre del registro | Description |
|---|---|
HvRegisterGuestOsId |
Registro de identificación del sistema operativo invitado |
HvRegisterHypervisorVersion |
Información de la versión del hipervisor |
HvRegisterPrivilegesAndFeaturesInfo |
Privilegios de partición e información de características |
HvRegisterFeaturesInfo |
Información de características del hipervisor |
HvRegisterImplementationLimitsInfo |
Límites específicos de la implementación |
HvRegisterHardwareFeaturesInfo |
Información de características de hardware |
HvRegisterTimeRefCount |
Contador de referencia de hora |
HvArm64RegisterSyntheticVbarEl1 |
Registro de direcciones base de vectores sintéticos para EL1 |
HvArm64RegisterSyntheticEsrEl1 |
Registro de síndrome de excepción sintética para EL1 |
HvRegisterGuestCrashCtl |
Registro del control de bloqueo de invitado |
HvRegisterGuestCrashP0 |
Parámetro de bloqueo de invitado 0 |
HvRegisterGuestCrashP1 |
Parámetro de bloqueo de invitado 1 |
HvRegisterGuestCrashP2 |
Parámetro de bloqueo de invitado 2 |
HvRegisterGuestCrashP3 |
Parámetro de bloqueo de invitado 3 |
HvRegisterGuestCrashP4 |
Parámetro de bloqueo de invitado 4 |
Todos los demás registros requieren que se establezca el identificador del sistema operativo invitado (distinto de cero) antes de que se puedan leer a través de esta hiperllamada.
Nota: Estos registros accesibles anticipadamente proporcionan principalmente información de funcionalidad de hipervisor y funcionalidad de informes de bloqueos, lo que permite a los invitados detectar características del hipervisor y establecer funcionalidad básica antes de la identificación completa del sistema operativo invitado.