Msvm_CompatibilityVector クラス

仮想マシン (VM) (VM コンピューター システムで実行される場合) またはホスト (ホスト コンピューター システムで実行される場合) の互換性情報を参照します。

次の構文は MOF コードを簡略化したもので、継承されたすべてのプロパティが含まれています。

構文

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

メンバー

Msvm_CompatibilityVector クラスには、次の種類のメンバーがあります。

プロパティ

Msvm_CompatibilityVector クラスには、これらのプロパティがあります。

CompareOperation

データ型: uint32

アクセスの種類: 読み取り専用

2 つのベクトルに互換性がある場合にのみ true を返す比較操作を識別します。 VM のデータは比較の左側にあり、ホストのデータは右側にあります。

Equal (0)

スーパーセット (1)

サブセット (2)

不整合 (3)

GreaterThan (4)

GreaterThanOrEqual (5)

LessThan (6)

LessThanOrEqual (7)

Multiple (8)

割り切り可能 (9)

CompatibilityInfo

データ型: uint64

アクセスの種類: 読み取り専用

比較に使用される実際の互換性属性データ。

VectorId

データ型: uint32

アクセスの種類: 読み取り専用

特定の属性を表す互換性ベクトルを識別します。 このプロパティは、ホストと VM の間の対応するベクトルを照合するために使用されます。

注釈

Msvm_VirtualSystemMigrationService クラスの GetSystemCompatibilityVectors メソッドは、ホストのMsvm_CompatibilityVector インスタンスの配列 (ホストで実行されている場合) または VM (VM で実行されている場合) を返します。 リスト 内の各Msvm_CompatibilityVector エントリには、互換性属性ベクトルが記述されています。 VM がホストと互換性を持つようにするには、そのすべての互換性属性がホストの属性と互換性がある必要があります。

Msvm_CompatibilityVector エントリには、次のプロパティがあります。

VectorId

互換性ベクトルを一意に識別します。 これは、ホストと VM の間で比較するベクターを照合するために使用されます。

CompareOperation

ベクトルに互換性があるかどうかを判断する比較操作を識別します。

CompatibilityInfo

実際の互換性属性を含みます。これは実質的に属性ペイロードです (プロセッサ機能マスク、キャッシュラインフラッシュサイズなど)

CompareOperation に定義された一連の操作には、基本的な整数比較とビットごとのロジックが含まれます。 これにより、 CompatibilityInfo の実際の内容が不透明なままになります。 一連の操作には、次のものが含まれます。

CompareOperation 説明 擬似コードの比較
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)

VM がホストと互換性があるかどうかを判断するには、SCVMM で次の手順を実行する必要があります。

VM がホストと互換性があるかどうかを判断するには

  1. VM のすべての Msvm_CompatibilityVector 要素を反復処理します。
  2. Msvm_CompatibilityVector要素ごとに、CompareOperation で指定された互換性操作を使用して、VM のハードウェア互換性ベクトルとホストの対応する互換性ベクトルを比較します。
  3. VM から のすべてのMsvm_CompatibilityVector 要素が互換性があると見なされる場合、VM はホストと互換性があります (プロセッサ機能の観点から)。

要件

要件
サポートされている最小のクライアント
Windows 8.1 [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2012 R2 [デスクトップ アプリのみ]
名前空間
Root\Virtualization\V2
MOF
WindowsVirtualization.V2.mof
[DLL]
Vmms.exe

こちらもご覧ください

GetSystemCompatibilityVectors

Msvm_VirtualSystemMigrationService