WHvCreateVirtualProcessor2

Crea un nuovo processore virtuale in una partizione con proprietà facoltative in fase di creazione.

Sintassi

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

Parameters

Partition

Handle per l'oggetto partizione.

VpIndex

Specifica l'indice del nuovo processore virtuale.

Properties

Specifica una matrice di proprietà da applicare al nuovo processore virtuale in fase di creazione. Può essere NULL quando PropertyCount è zero.

PropertyCount

Specifica il numero di elementi nella Properties matrice. Quando zero, il processore virtuale viene creato con le proprietà predefinite.

Proprietà

Ogni elemento della Properties matrice è un WHV_VIRTUAL_PROCESSOR_PROPERTY il cui PropertyCode membro seleziona la proprietà da applicare e il cui membro valore fornisce l'impostazione. Se lo stesso codice di proprietà viene visualizzato più volte, l'ultimo valore fornito diventa effettivo. Vengono definiti i codici di proprietà seguenti.

WHvVirtualProcessorPropertyCodeNumaNode

Specifica il nodo NUMA che esegue il backup del processore virtuale nel NumaNode membro. Quando questa proprietà non viene specificata, il processore virtuale viene posizionato sul nodo NUMA ideale del thread chiamante.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è S_OK.

Se esiste già un processore virtuale in VpIndex, il valore restituito è WHV_E_VP_ALREADY_EXISTS. Se VpIndex è maggiore o uguale al numero di processori della partizione, se una proprietà specifica un codice di proprietà sconosciuto o se il NumaNode valore non è un nodo NUMA valido, il valore restituito è E_INVALIDARG.

Remarks

La WHvCreateVirtualProcessor2 funzione crea un nuovo processore virtuale in una partizione. In x64, l'indice del processore virtuale viene usato per impostare l'ID APIC del processore. La chiamata di WHvCreateVirtualProcessor(Partition, VpIndex, 0) equivale alla chiamata di WHvCreateVirtualProcessor2(Partition, VpIndex, NULL, 0).

Requisiti

Requisito Valore
Minimo Windows supportato Windows 10 versione 20H2 (x64); Windows 11, versione 24H2, build 26100.3915 (Arm64)
Header WinHvPlatform.h
Libreria WinHvPlatform.lib
DLL WinHvPlatform.dll
Architecture x64, Arm64

Vedere anche