Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Létrehoz egy virtuális PCI- (VPCI-) eszközt, és hozzárendeli az erőforrásait egy partícióhoz.
Szemantika
typedef enum WHV_CREATE_VPCI_DEVICE_FLAGS
{
WHvCreateVpciDeviceFlagNone = 0x00000000,
WHvCreateVpciDeviceFlagPhysicallyBacked = 0x00000001,
WHvCreateVpciDeviceFlagUseLogicalInterrupts = 0x00000002
} WHV_CREATE_VPCI_DEVICE_FLAGS;
// Enables bitwise operators on the WHV_CREATE_VPCI_DEVICE_FLAGS enumeration.
DEFINE_ENUM_FLAG_OPERATORS(WHV_CREATE_VPCI_DEVICE_FLAGS);
HRESULT
WINAPI
WHvCreateVpciDevice(
_In_ WHV_PARTITION_HANDLE Partition,
_In_ UINT64 LogicalDeviceId,
_In_ HANDLE VpciResource,
_In_ WHV_CREATE_VPCI_DEVICE_FLAGS Flags,
_In_opt_ HANDLE NotificationEventHandle
);
Parameters
Partition
A partícióobjektum kezelése.
LogicalDeviceId
Az eszköz egyedi azonosítóját adja meg a partíció hatókörén belül.
VpciResource
Kezelje a virtuális eszközt háttérként szolgáló, korábban lefoglalt VPCI-erőforrást. Szerezze be ezt a fogópontot a WHvAllocateVpciResource
Flags
A létrehozandó eszköz választható jellemzőit adja meg értékek kombinációjaként WHV_CREATE_VPCI_DEVICE_FLAGS .
NotificationEventHandle
Opcionális leírót ad meg egy eseményhez, amely a VPCI-eszközhöz társított aszinkron eseményekről értesíti a hívót. Az esemény jelzése után kérje le a függőben lévő értesítéseket a következővel WHvGetVpciDeviceNotification: .
Visszaadott érték
Ha a függvény sikeres, a visszatérési érték az S_OK.
Remarks
A WHvCreateVpciDevice függvény létrehoz egy virtuális PCI-eszközt, és hozzárendeli a partícióhoz VpciResource azonosított fizikai vagy virtuális erőforrásokat. A hívás befejezése után a rendszer úgy programozza az IOMMU-t, hogy az eszközt háttérbe helyező fizikai vagy virtuális függvény PCI-kérelmezőazonosítója hozzá legyen rendelve a partíciótartományhoz, és a függvényből származó DMA-műveleteket a partíció címterére végezze el.
A függvény meghívása előtt foglalja le az erőforrást WHvAllocateVpciResource . Az eszköz létrehozása után megfeleltetje az MMIO-tartományait WHvMapVpciDeviceMmioRanges és megszakításait a következővel WHvMapVpciDeviceInterrupt: . Az eszköz megsemmisítése a következővel WHvDeleteVpciDevice: .
Requirements
| Requirement | Érték |
|---|---|
| Minimálisan támogatott Windows | Windows 10, 20H2-es verzió (x64); Windows 11, 24H2-es verzió, 26100.3915-ös build (Arm64) |
| Header | WinHvPlatform.h |
| Könyvtár | WinHvPlatform.lib |
| DLL | WinHvPlatform.dll |
| Architecture | x64, Arm64 |