WHvCreateVirtualProcessor2

Erstellt einen neuen virtuellen Prozessor in einer Partition mit optionalen Erstellungszeiteigenschaften.

Syntax

typedef enum WHV_VIRTUAL_PROCESSOR_PROPERTY_CODE
{
    WHvVirtualProcessorPropertyCodeNumaNode = 0x00000000,
} WHV_VIRTUAL_PROCESSOR_PROPERTY_CODE;

typedef struct WHV_VIRTUAL_PROCESSOR_PROPERTY
{
    WHV_VIRTUAL_PROCESSOR_PROPERTY_CODE PropertyCode;
    UINT32 Reserved;
    union
    {
        USHORT NumaNode;
        UINT64 Padding;
    };
} WHV_VIRTUAL_PROCESSOR_PROPERTY;

HRESULT
WINAPI
WHvCreateVirtualProcessor2(
    _In_ WHV_PARTITION_HANDLE Partition,
    _In_ UINT32 VpIndex,
    _In_reads_(PropertyCount) const WHV_VIRTUAL_PROCESSOR_PROPERTY* Properties,
    _In_ UINT32 PropertyCount
    );

Parameter

Partition

Behandeln sie das Partitionsobjekt.

VpIndex

Gibt den Index des neuen virtuellen Prozessors an.

Properties

Gibt ein Array von Eigenschaften an, die zur Erstellungszeit auf den neuen virtuellen Prozessor angewendet werden sollen. Kann sein NULL , wenn PropertyCount null ist.

PropertyCount

Gibt die Anzahl der Elemente im Properties Array an. Wenn null, wird der virtuelle Prozessor mit Standardeigenschaften erstellt.

Eigenschaften

Jedes Element des Properties Arrays ist ein WHV_VIRTUAL_PROCESSOR_PROPERTY Element, dessen PropertyCode Element die anzuwendende Eigenschaft auswählt und deren Wertelement die Einstellung bereitstellt. Wenn derselbe Eigenschaftscode mehrmals angezeigt wird, wird der letzte angegebene Wert wirksam. Die folgenden Eigenschaftencodes sind definiert.

WHvVirtualProcessorPropertyCodeNumaNode

Gibt den NUMA-Knoten an, der den virtuellen Prozessor im NumaNode Element zurückgibt. Wenn diese Eigenschaft nicht angegeben wird, wird der virtuelle Prozessor auf dem idealen NUMA-Knoten des aufrufenden Threads platziert.

Rückgabewert

Wenn die Funktion erfolgreich ist, lautet S_OKder Rückgabewert .

Wenn bereits ein virtueller Prozessor vorhanden VpIndexist, lautet WHV_E_VP_ALREADY_EXISTSder Rückgabewert . Wenn VpIndex die Prozessoranzahl der Partition größer oder gleich ist, wenn eine Eigenschaft einen unbekannten Eigenschaftscode angibt oder wenn der NumaNode Wert kein gültiger NUMA-Knoten ist, lautet E_INVALIDARGder Rückgabewert .

Remarks

Die WHvCreateVirtualProcessor2 Funktion erstellt einen neuen virtuellen Prozessor in einer Partition. Bei x64 wird der Index des virtuellen Prozessors verwendet, um die APIC-ID des Prozessors festzulegen. Das Aufrufen von WHvCreateVirtualProcessor(Partition, VpIndex, 0) entspricht dem Aufrufen von WHvCreateVirtualProcessor2(Partition, VpIndex, NULL, 0).

Anforderungen

Anforderung Wert
Mindestens unterstützte Windows Windows 10, Version 20H2 (x64); Windows 11, Version 24H2, Build 26100.3915 (Arm64)
Header WinHvPlatform.h
Bibliothek WinHvPlatform.lib
DLL WinHvPlatform.dll
Architecture x64, Arm64

Siehe auch