Msvm_MemorySettingData-Klasse
Stellt den konfigurierten Zustand des Arbeitsspeichers für eine VM dar.
Die folgende Syntax ist ein vereinfachter MOF-Code (Managed Object Format), der alle geerbten Eigenschaften enthält.
Syntax
[Dynamic, Provider("VmmsWmiInstanceAndMethodProvider"), AMENDMENT]
class Msvm_MemorySettingData : CIM_ResourceAllocationSettingData
{
string InstanceID;
string Caption = "Memory Default Settings";
string Description = "Describes the default settings for the memory resources.";
string ElementName;
uint16 ResourceType = 4;
string OtherResourceType;
string ResourceSubType = "Microsoft:Hyper-V:Memory";
string PoolID;
uint16 ConsumerVisibility;
string HostResource[];
boolean HugePagesEnabled;
string AllocationUnits = "byte * 2^20";
uint64 VirtualQuantity;
uint64 Reservation;
uint64 Limit;
uint32 Weight;
boolean AutomaticAllocation = True;
boolean AutomaticDeallocation = True;
string Parent;
string Connection[];
string Address;
uint16 MappingBehavior;
string AddressOnParent;
string VirtualQuantityUnits = "byte * 2^20";
boolean DynamicMemoryEnabled;
uint32 TargetMemoryBuffer;
boolean IsVirtualized = True;
boolean SwapFilesInUse;
uint64 MaxMemoryBlocksPerNumaNode;
uint64 SgxSize;
boolean SgxEnabled;
};
Member
Die Msvm_MemorySettingData-Klasse verfügt über die folgenden Membertypen:
Eigenschaften
Die Msvm_MemorySettingData-Klasse verfügt über die folgenden Eigenschaften.
Adresse
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Die Adresse der Ressource. Ein Beispiel hierfür ist die MAC-Adresse eines Ethernet-Ports. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
AddressOnParent
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Beschreibt die Adresse dieser Ressource im Kontext des übergeordneten Elements. Die Eigenschaften Parent und AddressOnParent werden verwendet, um die Controllerbeziehung sowie die Anordnung von Geräten auf einem Controller zu beschreiben. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
AllocationUnits
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Die Zuordnungseinheiten, die von den Eigenschaften Reservation und Limit verwendet werden. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
AutomaticAllocation
Datentyp: Boolescher Wert
Zugriffstyp: schreibgeschützt
Gibt an, ob die Ressource automatisch zugeordnet wird. Wenn diese Eigenschaft beispielsweise auf True festgelegt ist, wird die Ressource beim Einschalten der Consumer-VM zugeordnet. Der Wert False gibt an, dass die Ressource explizit zugeordnet werden muss. Die Einstellung kann z. B. für Wechselmedien (etwa eine CD-ROM oder eine Diskette) verwendet werden, wenn das Medium beim Starten nicht vorhanden ist. Zum Zuordnen der Ressource ist ein expliziter Vorgang erforderlich. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
AutomaticDeallocation
Datentyp: Boolescher Wert
Zugriffstyp: schreibgeschützt
Gibt an, ob die Ressource automatisch zugeordnet wird. Wenn diese Eigenschaft beispielsweise auf True festgelegt ist, wird die Ressource beim Einschalten der Consumer-VM zugeordnet. Ist sie auf False festgelegt, muss die Ressource explizit zugeordnet werden. Die Einstellung kann z. B. für Wechselmedien (etwa eine CD-ROM oder eine Diskette) verwendet werden, wenn das Medium beim Starten nicht vorhanden ist. Zum Zuordnen der Ressource ist ein expliziter Vorgang erforderlich. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
Caption
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Qualifizierer: MaxLen (64)
Eine kurze Beschreibung des Objekts. Diese Eigenschaft wird von CIM_ManagedElement geerbt.
Verbindung
Datentyp: string-Array
Zugriffstyp: schreibgeschützt
Das Gerät, mit dem diese Ressource verbunden ist. Dies kann beispielsweise ein benanntes Netzwerk oder ein Switchport sein. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
ConsumerVisibility
Datentyp: uint16
Zugriffstyp: schreibgeschützt
Beschreibt die Sichtbarkeit der Consumer für die zugeordnete Ressource. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
Beschreibung
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Eine Beschreibung des -Objekts. Diese Eigenschaft wird von CIM_ManagedElement geerbt.
DynamicMemoryEnabled
Datentyp: Boolescher Wert
Zugriffstyp: schreibgeschützt
Gibt an, ob dynamischer Arbeitsspeicher für die VM aktiviert ist.
ElementName
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Ein Anzeigename für das Objekt. Diese Eigenschaft wird von CIM_SettingData geerbt.
HostResource
Datentyp: string-Array
Zugriffstyp: schreibgeschützt
Das erste Element dieses Arrays enthält einen Verweis auf die zugrunde liegende Hostressource, die zugewiesen werden soll. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt, aber nicht verwendet.
HugePagesEnabled
Datentyp: Boolescher Wert
Zugriffstyp: schreibgeschützt
Gibt an, ob der Arbeitsspeicher von 1 GB-Seiten unterstützt wird.
InstanceID
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Qualifizierer: Schlüssel
Identifiziert eine Instanz dieser Klasse eindeutig. Diese Eigenschaft wird von CIM_ManagedElement geerbt.
IsVirtualized
Datentyp: Boolescher Wert
Zugriffstyp: schreibgeschützt
Gibt an, ob dieses Gerät virtualisiert ist oder per Pass-Through übergeben wird. Bei False wird die zugrunde liegende Ressource oder Hostressource verwendet. Die DeviceID-Eigenschaft muss mindestens ein Element enthalten. Bei True ist die Ressource virtualisiert und kann nicht direkt einer zugrunde liegenden Ressource oder Hostressource zugeordnet werden. Einige Implementierungen unterstützen möglicherweise bestimmte Zuweisungen für virtualisierte Ressourcen. In diesem Fall werden die Hostressourcen mithilfe der DeviceID-Eigenschaft verfügbar gemacht. Diese Eigenschaft ist immer auf True festgelegt.
Begrenzung
Datentyp: uint64
Zugriffstyp: schreibgeschützt
Die maximale Arbeitsspeichermenge, die von der VM belegt werden kann. Bei einer VM, für die dynamischer Arbeitsspeicher aktiviert ist, stellt dies die maximale Speichereinstellung dar. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
MappingBehavior
Datentyp: uint16
Zugriffstyp: schreibgeschützt
Gibt an, wie diese Ressource zugrunde liegenden Ressourcen zugeordnet wird. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
MaxMemoryBlocksPerNumaNode
Datentyp: uint64
Zugriffstyp: schreibgeschützt
Die maximale Arbeitsspeichermenge, die innerhalb der VM als zu einem einzelnen NUMA-Knoten gehörend beobachtet werden kann.
OtherResourceType
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Eine Zeichenfolge, die den Ressourcentyp beschreibt, wenn kein gut definierter Wert verfügbar ist und ResourceType auf den Wert „Other“ festgelegt ist. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
Parent
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Das übergeordnete Element der Ressource. Beispiel: ein Controller für die aktuelle Zuordnung. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
PoolID
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Der Bezeichner des Ressourcenpools, aus dem diese Ressource zugeordnet wurde. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
Reservierung
Datentyp: uint64
Zugriffstyp: schreibgeschützt
Gibt die Arbeitsspeichermenge an, die für diese VM garantiert verfügbar ist. Bei einer VM, für die dynamischer Arbeitsspeicher aktiviert ist, stellt dies die minimale Speichereinstellung dar. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
ResourceSubType
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Eine Zeichenfolge, die einen implementierungsspezifischen Untertyp für diese Ressource beschreibt. Dies kann beispielsweise verwendet werden, um verschiedene Modelle desselben Ressourcentyps zu unterscheiden. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
ResourceType
Datentyp: uint16
Zugriffstyp: schreibgeschützt
Der Ressourcentyp, den diese Zuordnungseinstellung darstellt. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt und ist immer auf 4 (Arbeitsspeicher) festgelegt.
SgxEnabled
Datentyp: Boolescher Wert
Zugriffstyp: schreibgeschützt
Gibt an, ob SGX aktiviert ist.
Hinweis
Diese Eigenschaft wurde in Windows 10, Version 1703 hinzugefügt.
SgxSize
Datentyp: uint64
Zugriffstyp: schreibgeschützt
Die Menge des SGX-Speichers (in MB), der für die VM zugeordnet werden soll.
Hinweis
Diese Eigenschaft wurde in Windows 10, Version 1703 hinzugefügt.
SwapFilesInUse
Datentyp: Boolescher Wert
Zugriffstyp: schreibgeschützt
Ist true, wenn die Auslagerung der zweiten Ebene (Second Level Paging, SLP) aktiv ist, und andernfalls false.
TargetMemoryBuffer
Datentyp: uint32
Zugriffstyp: schreibgeschützt
Definiert die Menge an zusätzlichem Arbeitsspeicher, die zur Laufzeit für eine VM reserviert werden sollte, als Prozentsatz des Gesamtspeichers, den die VM voraussichtlich benötigt. Dies gilt nur für VMs, für die dynamischer Arbeitsspeicher aktiviert ist.
Der Wert dieser Eigenschaft kann zwischen 5 und 2.000 liegen.
VirtualQuantity
Datentyp: uint64
Zugriffstyp: schreibgeschützt
Der Gesamtarbeitsspeicher auf der VM, wie er vom Gastbetriebssystem erkannt wird. Bei einer VM, für die dynamischer Arbeitsspeicher aktiviert ist, stellt dies den anfänglichen Arbeitsspeicher dar, der beim Start verfügbar ist. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
VirtualQuantityUnits
Datentyp: Zeichenfolge
Zugriffstyp: schreibgeschützt
Gibt die Maßeinheit für diese Ressourcenzuordnung an. Der Wert dieser Eigenschaft muss ein gültiger Wert des Qualifizierers „Programmatic Units“ gemäß Anhang C.1 von DSP0004 V2.5 oder höher sein. Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
Weight
Datentyp: uint32
Zugriffstyp: schreibgeschützt
Definiert den Gewichtungswert der Speicherbelegung für jede VM. Nachdem alle Reserven erfüllt wurden, wird der verbleibende Arbeitsspeicher der Hostingplattform VMs basierend auf ihren relativen Gewichtungen zugeordnet (wobei der mit der Limit-Eigenschaft angegebene Wert nicht überschritten werden darf). Diese Eigenschaft wird von CIM_ResourceAllocationSettingData geerbt.
Hinweise
Der Zugriff auf die Msvm_MemorySettingData-Klasse ist möglicherweise durch die UAC-Filterung eingeschränkt. Weitere Informationen finden Sie unter Benutzerkontensteuerung und WMI.
Beispiele
function WaitForResult
{
param($result)
if ($result.ReturnValue -eq 4096)
{
while($true)
{
$result.Job
if ($result.Job -ne $null)
{
if ($result.Job.JobState -gt 4)
{
return $result.Job.ErrorCode
}
}
start-sleep 1
}
}
else
{
return $result.ReturnValue
}
}
if ($($args.count) -ne 2)
{
Write-Host "EnableHugePages.ps1 VMName SizeInMB"
return
}
$vmName = $args[0]
$sizeInMB = $args[1]
$namespace = "root\virtualization\v2"
$vm = Get-WmiObject -class MSVM_ComputerSystem -filter "ElementName='$vmName'" -namespace $namespace
$settings = Get-WmiObject -query "Associators of {$vm} where ResultClass = Msvm_VirtualSystemSettingData" -namespace $namespace
$vmSettings = $settings | ? VirtualSystemType -eq "Microsoft:Hyper-V:System:Realized"
$memorySettings = Get-WmiObject -query "Associators of {$vmSettings} where ResultClass = Msvm_MemorySettingData" -namespace $namespace
$memorySettings.MaxMemoryBlocksPerNumaNode = $sizeInMB
$memorySettings.Reservation = $sizeInMB
$memorySettings.Limit = $sizeInMB
$memorySettings.VirtualQuantity = $sizeInMB
$memorySettings.HugePagesEnabled = $True
$vmSvc = Get-WmiObject -class Msvm_VirtualSystemManagementService -namespace $namespace
$res = $vmSvc.ModifyResourceSettings($memorySettings.GetText(2))
if (WaitForResult($res) -ne 0)
{
Write-Host "Failed."
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows Server 2012 [nur Desktop-Apps] |
Namespace |
Root\Virtualization\V2 |
MOF |
WindowsVirtualization.V2.mof |
DLL |
Vmms.exe |