HvCallStartVirtualProcessor

HvCallStartVirtualProcessor è un metodo con supporto per l'avvio di un processore virtuale. Dal punto di vista funzionale è equivalente ai metodi tradizionali basati su INIT, ad eccezione del fatto che il punto di distribuzione virtuale può iniziare con uno stato di registrazione desiderato.

Questo è l'unico metodo per avviare un VP in una VTL diverso da zero.

Interfaccia

HV_STATUS
HvCallStartVirtualProcessor(
   _In_ HV_PARTITION_ID PartitionId,
   _In_ HV_VP_INDEX VpIndex,
   _In_ HV_VTL TargetVtl,
   _In_ HV_INITIAL_VP_CONTEXT VpContext
   );

Codice di chiamata

0x0099 (Semplice)

Parametri di input

Nome Offset Dimensione Informazioni fornite
PartitionId 0 8 Partition
VpIndex 8 4 Indice VP da avviare. Per ottenere l'indice VP da un ID APIC, usare HvGetVpIndexFromApicId.
TargetVtl 12 1 VTL di destinazione
VpContext 16 224 Specifica il contesto iniziale in cui deve essere avviato il punto di distribuzione virtuale.

Valori restituiti

Codice stato Condizione di errore
HV_STATUS_ACCESS_DENIED Accesso negato
HV_STATUS_INVALID_PARTITION_ID L'ID di partizione specificato non è valido.
HV_STATUS_INVALID_VP_INDEX Il processore virtuale specificato da HV_VP_INDEX non è valido.
HV_STATUS_INVALID_REGISTER_VALUE Il valore del registro specificato non è valido.
HV_STATUS_INVALID_VP_STATE Un processore virtuale non è nello stato corretto per le prestazioni dell'operazione indicata.
HV_STATUS_INVALID_PARTITION_STATE La partizione specificata non è nello stato "attivo".
HV_STATUS_INVALID_VTL_STATE Lo stato VTL è in conflitto con l'operazione richiesta.

Vedi anche

HV_INITIAL_VP_CONTEXT