Win32_PhysicalMemory class
The Win32_PhysicalMemory WMI class represents a physical memory device located on a computer system and available to the operating system.
The following syntax is simplified from Managed Object Format (MOF) code and includes all of the inherited properties. Properties are listed in alphabetic order, not MOF order.
[Dynamic, Provider("CIMWin32"), UUID("{FAF76B93-798C-11D2-AAD1-006008C78BC7}"), AMENDMENT]
class Win32_PhysicalMemory : CIM_PhysicalMemory
{
uint32 Attributes;
string BankLabel;
uint64 Capacity;
string Caption;
uint32 ConfiguredClockSpeed;
uint32 ConfiguredVoltage;
string CreationClassName;
uint16 DataWidth;
string Description;
string DeviceLocator;
uint16 FormFactor;
boolean HotSwappable;
datetime InstallDate;
uint16 InterleaveDataDepth;
uint32 InterleavePosition;
string Manufacturer;
uint32 MaxVoltage;
uint16 MemoryType;
uint32 MinVoltage;
string Model;
string Name;
string OtherIdentifyingInfo;
string PartNumber;
uint32 PositionInRow;
boolean PoweredOn;
boolean Removable;
boolean Replaceable;
string SerialNumber;
string SKU;
uint32 SMBIOSMemoryType;
uint32 Speed;
string Status;
string Tag;
uint16 TotalWidth;
uint16 TypeDetail;
string Version;
};
The Win32_PhysicalMemory class has these types of members:
The Win32_PhysicalMemory class has these properties.
-
Attributes
-
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 17|Attributes")
SMBIOS - Type 17 - Attributes. Represents the RANK.
This value comes from the Attributes member of the Memory Device structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
-
-
BankLabel
-
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (64), MappingStrings ("MIF.DMTF|Memory Device|002.4")
Physically labeled bank where the memory is located.
Examples: "Bank 0", "Bank A"
This value comes from the Bank Locator member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalMemory.
-
-
Capacity
-
-
Data type: uint64
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.5"), Units ("bytes")
Total capacity of the physical memory—in bytes.
This value comes from the Memory Device structure in the SMBIOS version information. For SMBIOS versions 2.1 thru 2.6 the value comes from the Size member. For SMBIOS version 2.7+ the value comes from the Extended Size member.
This property is inherited from CIM_PhysicalMemory.
For more information about using uint64 values in scripts, see Scripting in WMI.
-
-
Caption
-
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (64), DisplayName ("Caption")
Short description of the object—a one-line string.
This property is inherited from CIM_ManagedSystemElement.
-
-
ConfiguredClockSpeed
-
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 17|Configured Memory Clock Speed")
The configured clock speed of the memory device, in megahertz (MHz), or 0, if the speed is unknown.
This value comes from the Configured Memory Clock Speed member of the Memory Device structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
-
-
ConfiguredVoltage
-
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 17|Configured voltage")
Configured voltage for this device, in millivolts, or 0, if the voltage is unknown.
This value comes from the Configured voltage member of the Memory Device structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
-
-
CreationClassName
-
Name of the first concrete class that appears in the inheritance chain used in the creation of an instance. When used with the other key properties of the class, the property allows all instances of this class and its subclasses to be identified uniquely.
This property is inherited from CIM_PhysicalElement.
-
DataWidth
-
-
Data type: uint16
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.8"), Units ("bits")
Data width of the physical memory—in bits. A data width of 0 (zero) and a total width of 8 (eight) indicates that the memory is used solely to provide error correction bits.
This value comes from the Data Width member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalMemory.
-
-
Description
-
-
Data type: string
-
Access type: Read-only
-
Qualifiers: DisplayName ("Description")
Description of an object.
This property is inherited from CIM_ManagedSystemElement.
-
-
DeviceLocator
-
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 17|Device Locator")
Label of the socket or circuit board that holds the memory.
Example: "SIMM 3"
This value comes from the Device Locator member of the Memory Device structure in the SMBIOS information.
-
-
FormFactor
-
-
Data type: uint16
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.6")
Implementation form factor for the chip.
This value comes from the Form Factor member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_Chip.
-
-
(0)
-
Unknown
-
(1)
-
Other
-
(2)
-
SIP
-
(3)
-
DIP
-
(4)
-
ZIP
-
(5)
-
SOJ
-
(6)
-
Proprietary
-
(7)
-
SIMM
-
(8)
-
DIMM
-
(9)
-
TSOP
-
(10)
-
PGA
-
(11)
-
RIMM
-
(12)
-
SODIMM
-
(13)
-
SRIMM
-
(14)
-
SMD
-
(15)
-
SSMP
-
(16)
-
QFP
-
(17)
-
TQFP
-
(18)
-
SOIC
-
(19)
-
LCC
-
(20)
-
PLCC
-
(21)
-
BGA
-
(22)
-
FPBGA
-
(23)
-
LGA
HotSwappable
-
Data type: boolean
-
Access type: Read-only
If TRUE, this physical media component can be replaced with a physically different but equivalent one while the containing package has the power applied. For example, a fan component may be designed to be hot-swapped. All components that can be hot-swapped are inherently removable and replaceable.
This property is inherited from CIM_PhysicalComponent.
InstallDate
-
Data type: datetime
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|ComponentID|001.5"), DisplayName ("Install Date")
Date and time the object is installed. This property does not need a value to indicate that the object is installed.
This property is inherited from CIM_ManagedSystemElement.
InterleaveDataDepth
-
Data type: uint16
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 20|Interleaved Data Depth")
Unsigned 16-bit integer maximum number of consecutive rows of data that are accessed in a single interleaved transfer from the memory device. If the value is 0 (zero), the memory is not interleaved.
InterleavePosition
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device Mapped Addresses|001.7")
Position of the physical memory in an interleave. For example, in a 2:1 interleave, a value of "1" indicates that the memory is in the "even" position.
This property is inherited from CIM_PhysicalMemory.
0
Noninterleaved
1
First position
2
Second position
Manufacturer
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (256)
Name of the organization responsible for producing the physical element.
This value comes from the Manufacturer member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalElement.
MaxVoltage
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 17|Maximum voltage")
The maximum operating voltage for this device, in millivolts, or 0, if the voltage is unknown.
This value comes from the Maximum voltage member of the Memory Device structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
MemoryType
-
Data type: uint16
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.9")
Type of physical memory. This is a CIM value that is mapped to the SMBIOS value. The SMBIOSMemoryType property contains the raw SMBIOS memory type.
This value comes from the Memory Type member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalMemory.
Unknown (0)
Other (1)
DRAM (2)
Synchronous DRAM (3)
Cache DRAM (4)
EDO (5)
EDRAM (6)
VRAM (7)
SRAM (8)
RAM (9)
ROM (10)
Flash (11)
EEPROM (12)
FEPROM (13)
EPROM (14)
CDRAM (15)
3DRAM (16)
SDRAM (17)
SGRAM (18)
RDRAM (19)
DDR (20)
DDR2 (21)
DDR2—May not be available.
DDR2 FB-DIMM (22)
DDR2—FB-DIMM,May not be available.
24
DDR3—May not be available.
25
FBD2
DDR4 (26)
MinVoltage
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 20|Minimum voltage")
The minimum operating voltage for this device, in millivolts, or 0, if the voltage is unknown.
This value comes from the Minimum voltage member of the Memory Device structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
Model
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (64)
Name for the physical element.
This property is inherited from CIM_PhysicalElement.
Name
-
Data type: string
-
Access type: Read-only
-
Qualifiers: DisplayName ("Name")
Label for the object. When subclassed, the property can be overridden to be a key property.
This property is inherited from CIM_ManagedSystemElement.
OtherIdentifyingInfo
-
Data type: string
-
Access type: Read-only
Additional data, beyond asset tag information, that can be used to identify a physical element. One example is bar code data associated with an element that also has an asset tag. If only bar code data is available and unique or able to be used as an element key, this property is be NULL and the bar code data is used as the class key in the tag property.
This property is inherited from CIM_PhysicalElement.
PartNumber
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (256)
Part number assigned by the organization responsible for producing or manufacturing the physical element.
This value comes from the Part Number member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalElement.
PositionInRow
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device Mapped Addresses|001.6")
Position of the physical memory in a row. For example, if it takes two 8-bit memory devices to form a 16-bit row, then a value of 2 (two) means that this memory is the second device—0 (zero) is an invalid value for this property.
This property is inherited from CIM_PhysicalMemory.
PoweredOn
-
Data type: boolean
-
Access type: Read-only
If TRUE, the physical element is powered on.
This property is inherited from CIM_PhysicalElement.
Removable
-
Data type: boolean
-
Access type: Read-only
If TRUE, a physical component is removable (if it is designed to be taken in and out of the physical container in which it is normally found, without impairing the function of the overall packaging). A component can still be removable if power must be "off" to perform the removal. If power can be "on" and the component removed, then the element is removable and can be hot-swapped. For example, an upgradable processor chip is removable.
This property is inherited from CIM_PhysicalComponent.
Replaceable
-
Data type: boolean
-
Access type: Read-only
If TRUE, this physical media component can be replaced with a physically different one. For example, some computer systems allow the main processor chip to be upgraded to one of a higher clock rating. In this case, the processor is said to be replaceable. All removable components are inherently replaceable.
This property is inherited from CIM_PhysicalComponent.
SerialNumber
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (64)
Manufacturer-allocated number to identify the physical element.
This value comes from the Serial Number member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalElement.
SKU
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (64)
Stock keeping unit number for the physical element.
This property is inherited from CIM_PhysicalElement.
SMBIOSMemoryType
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 17|Memory_Type")
The raw SMBIOS memory type. The value of the MemoryType property is a CIM value that is mapped to the SMBIOS value.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
Speed
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: Units ("nanoseconds")
Speed of the physical memory—in nanoseconds.
This value comes from the Speed member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalMemory.
Status
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (10), DisplayName ("Status")
Current status of the object. Various operational and nonoperational statuses can be defined. Operational statuses include: "OK", "Degraded", and "Pred Fail" (an element, such as a SMART-enabled hard disk drive, may be functioning properly but predicting a failure in the near future). Nonoperational statuses include: "Error", "Starting", "Stopping", and "Service". The latter, "Service", could apply during mirror-resilvering of a disk, reload of a user permissions list, or other administrative work. Not all such work is online, yet the managed element is neither "OK" nor in one of the other states.
This property is inherited from CIM_ManagedSystemElement.
The possible values are.
OK ("OK")
Error ("Error")
Degraded ("Degraded")
Unknown ("Unknown")
Pred Fail ("Pred Fail")
Starting ("Starting")
Stopping ("Stopping")
Service ("Service")
Stressed ("Stressed")
NonRecover ("NonRecover")
No Contact ("No Contact")
Lost Comm ("Lost Comm")
Tag
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Key, MaxLen (256), Override ("Tag"), MappingStrings ("WMI")
Unique identifier for the physical memory device that is represented by an instance of Win32_PhysicalMemory. This property is inherited from CIM_PhysicalElement.
Example: "Physical Memory 1"
TotalWidth
-
Data type: uint16
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.7"), Units ("bits")
Total width, in bits, of the physical memory, including check or error correction bits. If there are no error correction bits, the value in this property should match what is specified for the DataWidth property.
This value comes from the Total Width member of the Memory Device structure in the SMBIOS information.
This property is inherited from CIM_PhysicalMemory.
TypeDetail
-
Data type: uint16
-
Access type: Read-only
-
Qualifiers: MappingStrings ("SMBIOS|Type 17|Type Detail")
Type of physical memory represented.
This value comes from the Type Detail member of the Memory Device structure in the SMBIOS information.
Reserved (1)
Other (2)
Unknown (4)
Fast-paged (8)
Static column (16)
Pseudo-static (32)
RAMBUS (64)
Synchronous (128)
CMOS (256)
EDO (512)
Window DRAM (1024)
Cache DRAM (2048)
Non-volatile (4096)
Nonvolatile
Version
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (64)
Version of the physical element.
This property is inherited from CIM_PhysicalElement.
The Win32_PhysicalMemory class is derived from CIM_PhysicalMemory.
The following PowerShell code sample retrieves information regarding the physical memory of the local computer.
function get-WmiMemoryFormFactor {
param ([uint16] $char)
If ($char -ge 0 -and $char -le 22) {
switch ($char) {
0 {"00-Unknown"}
1 {"01-Other"}
2 {"02-SiP"}
3 {"03-DIP"}
4 {"04-ZIP"}
5 {"05-SOJ"}
6 {"06-Proprietary"}
7 {"07-SIMM"}
8 {"08-DIMM"}
9 {"09-TSOPO"}
10 {"10-PGA"}
11 {"11-RIM"}
12 {"12-SODIMM"}
13 {"13-SRIMM"}
14 {"14-SMD"}
15 {"15-SSMP"}
16 {"16-QFP"}
17 {"17-TQFP"}
18 {"18-SOIC"}
19 {"19-LCC"}
20 {"20-PLCC"}
21 {"21-FPGA"}
22 {"22-LGA"}
}
}
else {"{0} - undefined value" -f $char
}
Return
}
# Helper function to return memory Interleave Position
function get-WmiInterleavePosition {
param ([uint32] $char)
If ($char -ge 0 -and $char -le 2) {
switch ($char) {
0 {"00-Non-Interleaved"}
1 {"01-First Position"}
2 {"02-Second Position"}
}
}
else {"{0} - undefined value" -f $char
}
Return
}
# Helper function to return Memory Tupe
function get-WmiMemoryType {
param ([uint16] $char)
If ($char -ge 0 -and $char -le 20) {
switch ($char) {
0 {"00-Unknown"}
1 {"01-Other"}
2 {"02-DRAM"}
3 {"03-Synchronous DRAM"}
4 {"04-Cache DRAM"}
5 {"05-EDO"}
6 {"06-EDRAM"}
7 {"07-VRAM"}
8 {"08-SRAM"}
9 {"09-ROM"}
10 {"10-ROM"}
11 {"11-FLASH"}
12 {"12-EEPROM"}
13 {"13-FEPROM"}
14 {"14-EPROM"}
15 {"15-CDRAM"}
16 {"16-3DRAM"}
17 {"17-SDRAM"}
18 {"18-SGRAM"}
19 {"19-RDRAM"}
20 {"20-DDR"}
}
}
else {"{0} - undefined value" -f $char
}
Return
}
# Get the object
$memory = Get-WMIObject Win32_PhysicalMemory
# Format and Print
"System has {0} memory sticks:" -f $memory.count
Foreach ($stick in $memory) {
# Do some conversions
$cap=$stick.capacity/1mb
$ff=get-WmiMemoryFormFactor($stick.FormFactor)
$ilp=get-WmiInterleavePosition($stick.InterleavePosition)
$mt=get-WMIMemoryType($stick.MemoryType)
# print details of each stick
"BankLabel {0}" -f $stick.banklabel
"Capacity (MB) {0}" -f $cap
"Caption {0}" -f $stick.Caption
"CreationClassName {0}" -f $stick.creationclassname
"DataWidth {0}" -f $stick.DataWidth
"Description {0}" -f $stick.Description
"DeviceLocator {0}" -f $stick.DeviceLocator
"FormFactor {0}" -f $ff
"HotSwappable {0}" -f $stick.HotSwappable
"InstallDate {0}" -f $stick.InstallDate
"InterleaveDataDepth {0}" -f $stick.InterleaveDataDepth
"InterleavePosition {0}" -f $ilp
"Manufacturer {0}" -f $stick.Manufacturer
"MemoryType {0}" -f $mt
"Model {0}" -f $stick.Model
"Name {0}" -f $stick.Name
"OtherIdentifyingInfo {0}" -f $stick.OtherIdentifyingInfo
"PartNumber {0}" -f $stick.PartNumber
"PositionInRow {0}" -f $stick.PositionInRow
"PoweredOn {0}" -f $stick.PoweredOn
"Removable {0}" -f $stick.Removable
"Replaceable {0}" -f $stick.Replaceable
"SerialNumber {0}" -f $stick.SerialNumber
"SKU {0}" -f $stick.SKU
"Speed {0}" -f $stick.Speed
"Status {0}" -f $stick.Status
"Tag {0}" -f $stick.Tag
"TotalWidth {0}" -f $stick.TotalWidth
"TypeDetail {0}" -f $stick.TypeDetail
"Version {0}" -f $stick.Version
""
}
"-----"
Requirement | Value |
---|---|
Minimum supported client |
Windows Vista |
Minimum supported server |
Windows Server 2008 |
Namespace |
Root\CIMV2 |
MOF |
|
DLL |
|