WHvPostVirtualProcessorSynicMessage

Szintetikus megszakításvezérlő (SynIC) üzenetet jelenít meg egy virtuális processzoron.

Szemantika

#define WHV_SYNIC_MESSAGE_SIZE  256

HRESULT
WINAPI
WHvPostVirtualProcessorSynicMessage(
    _In_ WHV_PARTITION_HANDLE Partition,
    _In_ UINT32 VpIndex,
    _In_ UINT32 SintIndex,
    _In_reads_bytes_(MessageSizeInBytes) const VOID* Message,
    _In_ UINT32 MessageSizeInBytes
    );

Parameters

Partition

A partícióobjektum kezelése.

VpIndex

A cél virtuális processzor indexét adja meg.

SintIndex

Megadja azt a szintetikus megszakítási forrást (SINT), amelyre az üzenet kézbesítve van.

Message

Megadja a közzéteendő üzenet hasznos adatait.

MessageSizeInBytes

A bájtban megadott méretet Messageadja meg. Nullánál nagyobbnak és (256)-nál WHV_SYNIC_MESSAGE_SIZE nem nagyobbnak kell lennie.

Visszaadott érték

Ha a függvény sikeres, a visszatérési érték az S_OK.

A függvény akkor ad E_INVALIDARG vissza, ha MessageSizeInBytes nagyobb, mint WHV_SYNIC_MESSAGE_SIZE. Ha a cél virtuális processzor SINT-üzenethelyét már foglalta egy nem kézbesített üzenet, a függvény ad vissza HRESULT_FROM_WIN32(ERROR_HV_OBJECT_IN_USE).

Remarks

A WHvPostVirtualProcessorSynicMessage függvény üzenetet küld a cél virtuális processzor SynIC üzenetoldalára a megadott SINT-en, mintha a hipervizor küldte volna az üzenetet. Az üzenet be van írva a megfelelő SINT üzenethelyre, és a virtuális processzor értesítést kap a SINT-on keresztül.

Minden SINT egyetlen üzeneti ponttal rendelkezik. Ha a SINT előző üzenetét még nem használta fel a vendég, a hívás sikertelen ERROR_HV_OBJECT_IN_USElesz; a hívónak újra kell próbálkoznia, miután a vendég elfogadta az előző üzenetet.

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

Lásd még