Udostępnij przez


HvCallGetVpRegisters

Funkcja hypercallGetVpRegisters HvCallErs odczytuje stan procesora wirtualnego.

Interfejs

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
   );

Stan jest zwracany jako seria wartości rejestru, z których każda odpowiada nazwie rejestru podanej jako dane wejściowe.

Restrictions

  • Obiekt wywołujący musi być elementem nadrzędnym partycji określonej przez PartitionId lub określona partycja musi być "samodzielna", a partycja musi mieć uprawnienie AccessVpRegisters.

Kod wywołania

0x0050 (Rep)

Parametry wejściowe

Name Przesunięcie Rozmiar Podane informacje
PartitionId 0 8 Określa identyfikator partycji.
VpIndex 8 4 Określa indeks procesora wirtualnego.
TargetVtl 12 1 określa docelową bibliotekę VTL.
RsvdZ 13 3

Input List, element

Name Przesunięcie Rozmiar Podane informacje
RegisterName 0 4 Określa nazwę rejestru do odczytania.

Output List, element

Name Przesunięcie Rozmiar Podane informacje
RegisterValue 0 16 Zwraca wartość określonego rejestru.

Lista wczesnych rejestrów (ARM64)

W usłudze ARM64 niektóre rejestry mogą być odczytywane przy użyciu tego hiperwołania, zanim rejestr identyfikatora systemu operacyjnego gościa (HvRegisterGuestOsId) zostanie ustawiona na wartość inną niż zero. Umożliwia to wczesny dostęp do informacji funkcji hypervisor i krytycznych rejestrów systemu podczas procesu rozruchu.

Przed identyfikacją systemu operacyjnego gościa dozwolone są następujące rejestry:

Nazwa rejestracji Description
HvRegisterGuestOsId Rejestr identyfikacji systemu operacyjnego gościa
HvRegisterHypervisorVersion Informacje o wersji funkcji Hypervisor
HvRegisterPrivilegesAndFeaturesInfo Uprawnienia partycji i informacje o funkcjach
HvRegisterFeaturesInfo Informacje o funkcji Hypervisor
HvRegisterImplementationLimitsInfo Limity specyficzne dla implementacji
HvRegisterHardwareFeaturesInfo Informacje o funkcji sprzętu
HvRegisterTimeRefCount Licznik odwołania do czasu
HvArm64RegisterSyntheticVbarEl1 Rejestr adresów podstawowych wektorów syntetycznych dla EL1
HvArm64RegisterSyntheticEsrEl1 Rejestr zespołu wyjątków syntetycznych dla EL1
HvRegisterGuestCrashCtl Rejestr kontroli awarii gościa
HvRegisterGuestCrashP0 Parametr awarii gościa 0
HvRegisterGuestCrashP1 Parametr awarii gościa 1
HvRegisterGuestCrashP2 Parametr awarii gościa 2
HvRegisterGuestCrashP3 Parametr awarii gościa 3
HvRegisterGuestCrashP4 Parametr awarii gościa 4

Wszystkie inne rejestry wymagają ustanowienia identyfikatora systemu operacyjnego gościa (bez zera), zanim będzie można je odczytać za pośrednictwem tego hiperwołania.

Nuta: Te wczesne rejestry zapewniają przede wszystkim funkcje funkcji hypervisor i funkcji raportowania awarii, umożliwiając gościom odnajdywanie funkcji hypervisor i ustanawianie podstawowych funkcji przed pełną identyfikacją systemu operacyjnego gościa.

Zobacz także

HV_REGISTER_NAME

HV_REGISTER_VALUE