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


класс Msvm_CompatibilityVector

Ссылается на сведения о совместимости для виртуальной машины (при запуске на компьютере виртуальной машины) или узла (при запуске на хост-компьютере).

Следующий синтаксис упрощен из кода MOF и включает все унаследованные свойства.

Синтаксис

[Dynamic, Provider("VmmsWmiInstanceAndMethodProvider"), AMENDMENT]
class Msvm_CompatibilityVector
{
  uint32 VectorId;
  uint32 CompareOperation;
  uint64 CompatibilityInfo;
};

Участники

Класс Msvm_CompatibilityVector имеет следующие типы элементов:

Свойства

Класс Msvm_CompatibilityVector имеет эти свойства.

CompareOperation

Тип данных: uint32

Тип доступа: только для чтения

Определяет операцию сравнения, возвращающую значение true, только если два вектора совместимы. Данные виртуальной машины слева от сравнения, а данные узла — справа.

Равно (0)

Супермножество (1)

Подмножество (2)

Распоединение (3)

GreaterThan (4)

GreaterThanOrEqual (5)

LessThan (6)

LessThanOrEqual (7)

Несколько (8)

Делимый (9)

CompatibilityInfo

Тип данных: uint64

Тип доступа: только для чтения

Фактические данные атрибута совместимости, используемые для сравнения.

VectorId

Тип данных: uint32

Тип доступа: только для чтения

Определяет вектор совместимости, представляющий определенный атрибут. Это свойство используется для сопоставления соответствующих векторов между узлом и виртуальной машиной.

Замечания

Метод GetSystemCompatibilityVectors класса Msvm_VirtualSystemMigrationService возвращает массив Msvm_CompatibilityVector экземпляров узла (если выполняется на узле) или виртуальную машину (при запуске на виртуальной машине). Каждая запись Msvm_CompatibilityVector в списке описывает вектор атрибута совместимости. Чтобы виртуальная машина была совместима с узлом, все его атрибуты совместимости должны быть совместимы с атрибутами узла.

Каждая запись Msvm_CompatibilityVector имеет следующие свойства:

VectorId

Уникально идентифицирует вектор совместимости. Используется для сопоставления векторов для сравнения между узлом и виртуальной машиной.

CompareOperation

Определяет операцию сравнения, которая определяет, совместимы ли векторы.

CompatibilityInfo

Содержит фактический атрибут совместимости; Это фактически полезные данные атрибута (например, маска компонентов процессора, размер очистки строки кэша и т. д.)

Набор операций, определенных для CompareOperation , просто включает базовое сравнение целых чисел и побитовую логику. Это позволяет фактическому содержимому CompatibilityInfo оставаться непрозрачным. К набору операций относятся:

CompareOperation Description Сравнение псевдокодов
VmCcEqual VmAttr должен иметь значение HostAttr If (VmAttr == HostAttr)
VmCcSuperSet VmAttr должен быть супермножеством HostAttr If ((VmAttr и HostAttr) == HostAttr)
VmCcSubSet VmAttr должен быть подмножеством HostAttr If (VmAttr и HostAttr) == VmAttr)
VmCcDisjointSet VmAttr должен быть несвязанным набором из HostAttr If ((VmAttr и HostAttr) == 0)
VmCcGreater VmAttr должен быть больше HostAttr If (VmAttr > HostAttr)
VmCcGreaterEqual VmAttr должен быть больше или равен HostAttr If (VmAttr = HostAttr >)
VmCcLess VmAttr должно быть меньше HostAttr If (VmAttr < HostAttr)
VmCcLessEqual VmAttr должен быть меньше или равен HostAttr If (VmAttr = HostAttr <)
VmCcMultiple VmAttr должен быть нескольким из HostAttr If ((VmAttr % HostAttr) == 0)
VmCcDivisor VmAttr должен быть разделителем HostAttr If ((HostAttr % VmAttr) == 0)

SCVMM необходимо выполнить эти действия, чтобы определить, совместима ли виртуальная машина с узлом.

Определение совместимости виртуальной машины с узлом

  1. Выполните итерацию всех элементов Msvm_CompatibilityVector для виртуальной машины.
  2. Для каждого элемента Msvm_CompatibilityVector используйте операцию совместимости, указанную в CompareOperation , чтобы сравнить вектор совместимости оборудования виртуальной машины с соответствующим вектором совместимости узла.
  3. Если все элементы Msvm_CompatibilityVector из виртуальной машины считаются совместимыми, виртуальная машина совместима с узлом (с точки зрения функции процессора).

Requirements

Требование Значение
Минимальная версия клиента
Windows 8.1 [только классические приложения]
Минимальная версия сервера
Windows Server 2012 R2 [только классические приложения]
Пространство имен
Root\Virtualization\V2
MOF
WindowsVirtualization.V2.mof
DLL-библиотеки
Vmms.exe

См. также

GetSystemCompatibilityVectors

Msvm_VirtualSystemMigrationService