HvCallStartVirtualProcessor

Хвкаллстартвиртуалпроцессор — это метод поддержкой для запуска виртуального процессора. Он функционально эквивалентен традиционным методам на основе инициализации, за исключением того, что вице-президент может начать работу с требуемым состоянием регистра.

Это единственный метод для запуска вице-президента в ненулевом VTL.

Интерфейс

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

Код вызова

0x0099 Простого

Входные параметры

Имя Offset Размер Предоставленные сведения
PartitionId 0 8 Partition (Раздел)
VpIndex 8 4 Индекс президента для запуска. Чтобы получить индекс президента из идентификатора APIC, используйте ХвжетвпиндексфромапиЦид.
TargetVtl 12 1 Целевая VTL
VpContext 16 224 Указывает начальный контекст, в котором должен запускаться вице — президент.

Возвращаемые значения

Код состояния Условие возникновения ошибки
HV_STATUS_ACCESS_DENIED Доступ запрещен
HV_STATUS_INVALID_PARTITION_ID Указан недопустимый идентификатор раздела.
HV_STATUS_INVALID_VP_INDEX Виртуальный процессор, заданный HV_VP_INDEX, является недопустимым.
HV_STATUS_INVALID_REGISTER_VALUE Указанное значение реестра недопустимо.
HV_STATUS_INVALID_VP_STATE Состояние виртуального процессора не позволяет выполнить указанную операцию.
HV_STATUS_INVALID_PARTITION_STATE Указанный раздел находится в состоянии, отличающемся от "активное".
HV_STATUS_INVALID_VTL_STATE Состояние VTL конфликтует с запрошенной операцией.

См. также:

HV_INITIAL_VP_CONTEXT