다음을 통해 공유


Msvm_CompatibilityVector 클래스

VM(가상 머신)(VM 컴퓨터 시스템에서 실행되는 경우) 또는 호스트(호스트 컴퓨터 시스템에서 실행되는 경우)에 대한 호환성 정보를 참조합니다.

다음 구문은 MOF 코드에서 간소화되며 상속된 모든 속성을 포함합니다.

구문

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

멤버

Msvm_CompatibilityVector 클래스에는 다음과 같은 유형의 멤버가 있습니다.

속성

Msvm_CompatibilityVector 클래스에는 이러한 속성이 있습니다.

CompareOperation

데이터 형식: uint32

액세스 형식: 읽기 전용

두 벡터가 호환되는 경우에만 true를 반환하는 비교 작업을 식별합니다. VM의 데이터는 비교의 왼쪽에 있으며 호스트의 데이터는 오른쪽에 있습니다.

같음 (0)

상위 집합 (1)

하위 집합 (2)

분리 ( 3)

그레이터탄 (4)

GreaterThanOrEqual (5)

LessThan (6)

LessThanOrEqual (7)

다중 (8)

Divisible (9)

CompatibilityInfo

데이터 형식: uint64

액세스 형식: 읽기 전용

비교에 사용되는 실제 호환성 특성 데이터입니다.

VectorId

데이터 형식: uint32

액세스 형식: 읽기 전용

특정 특성을 나타내는 호환성 벡터를 식별합니다. 이 속성은 호스트와 VM 간의 해당 벡터를 일치 하는 데 사용 됩니다.

설명

Msvm_VirtualSystemMigrationService 클래스의 GetSystemCompatibilityVectors 메서드는 호스트(호스트에서 실행되는 경우) 또는 VM(VM에서 실행되는 경우)에 대한 Msvm_CompatibilityVector 인스턴스 배열 을 반환합니다. 목록의 각 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)

SCVMM은 VM이 호스트와 호환되는지 여부를 확인하기 위해 다음 단계를 수행해야 합니다.

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