Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zapisuje miejsce konfiguracji lub rejestr MMIO wirtualnego urządzenia PCI (VPCI).
Składnia
typedef enum WHV_VPCI_DEVICE_REGISTER_SPACE
{
WHvVpciConfigSpace = -1,
WHvVpciBar0 = 0,
WHvVpciBar1 = 1,
WHvVpciBar2 = 2,
WHvVpciBar3 = 3,
WHvVpciBar4 = 4,
WHvVpciBar5 = 5
} WHV_VPCI_DEVICE_REGISTER_SPACE;
typedef struct WHV_VPCI_DEVICE_REGISTER
{
WHV_VPCI_DEVICE_REGISTER_SPACE Location;
UINT32 SizeInBytes;
UINT64 OffsetInBytes;
} WHV_VPCI_DEVICE_REGISTER;
HRESULT
WINAPI
WHvWriteVpciDeviceRegister(
_In_ WHV_PARTITION_HANDLE Partition,
_In_ UINT64 LogicalDeviceId,
_In_ const WHV_VPCI_DEVICE_REGISTER* Register,
_In_reads_bytes_(Register->SizeInBytes) const VOID* Data
);
Parameters
Partition
Dojście do partycji, która jest właścicielem urządzenia VPCI.
LogicalDeviceId
Określa identyfikator urządzenia logicznego urządzenia VPCI.
Register
Określa rejestr do zapisu, jako strukturę identyfikującą WHV_VPCI_DEVICE_REGISTER przestrzeń rejestru, przesunięcie i rozmiar.
Data
Określa dane do zapisu w rejestrze. Bufor musi być co najmniej Register->SizeInBytes bajtami.
Wartość zwracana
Jeśli funkcja powiedzie się, zwracana wartość to S_OK.
Remarks
Funkcja WHvWriteVpciDeviceRegister zapisuje rejestr w przestrzeni konfiguracji lub przestrzeń MMIO fizycznej lub wirtualnej funkcji PCIe skojarzonej z urządzeniem VPCI. W przypadku przestrzeni konfiguracji dostęp do niektórych rejestrów może być filtrowany przez bazowy wirtualny stos PCI w celu zagwarantowania bezpiecznego przypisania maszyn wirtualnych funkcji PCIe. W przypadku przestrzeni MMIO ta funkcja może zapisywać rejestry, które nie zostały zamapowane bezpośrednio do przestrzeni adresowej wywołującego, ponieważ bazowy wirtualny stos PCI musi wymuszać środki zaradcze dla tych rejestrów.
Requirements
| Requirement | Value |
|---|---|
| Minimalna obsługiwana Windows | Windows 10, wersja 20H2 (x64); Windows 11, wersja 24H2, kompilacja 26100.3915 (Arm64) |
| Header | WinHvPlatform.h |
| Biblioteka | WinHvPlatform.lib |
| DLL | WinHvPlatform.dll |
| Architecture | x64, Arm64 |