Hyper-V WMI 类 的哪个 属性 访问内存信息

Which property of Hyper-V WMI classes to access memory info

我想使用 Hyper-V WMI 类 获取虚拟机的内存。 有4个内存classes;但是我找不到它们的任何属性来获取内存值。

Msvm_Memory class 具有 BlockSizeNumberOfBlocks 属性。 当我将它们相乘时,我无法得到正确的记忆。

尊重 https://msdn.microsoft.com/en-us/library/hh850175(v=vs.85).aspx 已经是错误的做法了。

BlockSize Data type: uint64 Access type: Read-only The size, in bytes, of the blocks that form the storage extent. If variable block size, then the maximum block size, in bytes, should be specified. If the block size is unknown, or if a block concept is not valid (for example, for aggregate extents, memory, or logical disks), enter a 1 (one). This property is inherited from CIM_StorageExtent, and it is always set to 1048576.

我应该使用 class 和 属性 哪个?

您可以使用Msvm_MemorySettingData class 访问实例的已定义内存属性。您可以按 InstanceID 筛选结果,然后将 AllocationUnitsLimit 一起解析以获得配置的最大内存量。

在以下情况下,可以为特定实例“4764334E-E001-4176-82EE-5594EC9B530E”分配 1 TB 内存。

Example InstanceID: "Microsoft:Definition\4764334E-E001-4176-82EE-5594EC9B530E\Default"
AllocationUnits: "bytes * 2^20"
Limit: 1048576

Msvm_MemorySettingData: https://msdn.microsoft.com/en-us/library/hh850176(v=vs.85).aspx