Поделиться через


Функция NdisGetHypervisorInfo (ndis.h)

Важно  

Начиная с Windows 10 версии 1703, NdisGetHypervisorInfo не рекомендуется использовать. Драйверам рекомендуется отказаться от него, так как он может быть недоступен в будущих версиях операционной системы.

Вместо этого драйверы должны следовать инструкциям гипервизора, чтобы запрашивать наличие и возможности гипервизора. Например, инструкции Hyper-V задокументированы в функциональной спецификации верхнего уровня.

Функция NdisGetHypervisorInfo возвращает сведения о гипервизоре, который присутствует в системе.

Синтаксис

NDIS_STATUS NdisGetHypervisorInfo(
  [in, out] PNDIS_HYPERVISOR_INFO HypervisorInfo
);

Параметры

[in, out] HypervisorInfo

Указатель на структуру, выделенную вызывающим объектом NDIS_HYPERVISOR_INFO , которая содержит сведения о гипервизоре, который присутствует в системе.

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

NdisGetHypervisorInfo может возвращать одно из следующих значений состояния:

Код возврата Описание
NDIS_STATUS_SUCCESS
Операция выполнена успешно.
NDIS_STATUS_BUFFER_TOO_SHORT
Размер буфера входных параметров был слишком мал.

Комментарии

Драйверы мини-портов NDIS вызывают функцию NdisGetHypervisorInfo , чтобы определить, присутствует ли гипервизор в системе.

При возврате функции NdisGetHypervisorInfo параметр HypervisorInfo содержит указатель на структуру NDIS_HYPERVISOR_INFO . Эта структура содержит сведения о том, присутствует ли гипервизор, а также тип секции, из которой была вызвана эта функция. Структура NDIS_HYPERVISOR_INFO предоставляет эти сведения следующим образом:

  • Если гипервизор присутствует, флаг NDIS_HYPERVISOR_INFO_FLAG_HYPERVISOR_PRESENT устанавливается в элементе Flags .
  • Если гипервизор Майкрософт присутствует, член PartitionType имеет одно из следующих значений:
    • Если функция NdisGetHypervisorInfo была вызвана из операционной системы управления, которая выполняется в родительском разделе Hyper-V, то член PartitionType имеет значение NdisHypervisorPartitionTypeMsHvParent.
    • Если функция NdisGetHypervisorInfo была вызвана из гостевой операционной системы, которая выполняется в дочернем разделе Hyper-V, член PartitionType имеет значение NdisHypervisorPartitionMsHvChild.
  • Если гипервизор другого поставщика присутствует, элемент PartitionType имеет значение NdisHypervisorPartitionTypeUnknown.
Примечание Драйвер должен инициализировать элемент Headerструктуры NDIS_HYPERVISOR_INFO перед вызовом функции NdisGetHypervisorInfo .
 

Требования

Требование Значение
Минимальная версия клиента Поддерживается в NDIS 6.0 и более поздних версиях.
Целевая платформа Универсальное
Верхняя часть ndis.h (включая Ndis.h)
Библиотека Ndis.lib
IRQL <= DISPATCH_LEVEL

См. также раздел

NDIS_HYPERVISOR_INFO