SMBIOS_MEMORY_DEVICE_INFORMATION - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _SMBIOS_H
#include <pshpack1.h>

typedef struct _SMBIOS_MEMORY_DEVICE_INFORMATION
{
    SMBIOS_HEADER Header;
    // 2.1+
    USHORT PhysicalArrayHandle;
    USHORT MemoryErrorInformationHandle;
    USHORT TotalWidth;
    USHORT DataWidth;

    union
    {
        struct
        {
            USHORT Size : 15;
            USHORT Granularity : 1; // 0 = megabytes, 1 = kilobytes
        };

        USHORT Value;
    } Size;

    UCHAR FormFactor;        // SMBIOS_MEMORY_DEVICE_FORM_FACTOR_*
    UCHAR DeviceSet;
    UCHAR DeviceLocator;     // string
    UCHAR BankLocator;       // string
    UCHAR MemoryType;        // SMBIOS_MEMORY_DEVICE_TYPE_*
    USHORT TypeDetail;       // SMBIOS_MEMORY_DEVICE_TYPE_DETAIL_*
    USHORT Speed;
    // 2.3+
    UCHAR Manufacturer;      // string
    UCHAR SerialNumber;      // string
    UCHAR AssetTag;          // string
    UCHAR PartNumber;        // string
    // 2.6+

    union
    {
        struct
        {
            UCHAR Rank : 4;
            UCHAR Reserved : 4;
        };

        UCHAR Value;
    } Attributes;

    // 2.7+
    ULONG ExtendedSize;
    USHORT ConfiguredSpeed;
    // 2.8+
    USHORT MinimumVoltage;
    USHORT MaximumVoltage;
    USHORT ConfiguredVoltage;
    // 3.2+
    UCHAR Technology;        // SMBIOS_MEMORY_DEVICE_TECHNOLOGY_*
    USHORT ModeCapabilities; // SMBIOS_MEMORY_DEVICE_MODE_*
    UCHAR FirmwareVersion;   // string
    USHORT ModuleManufacturerID;
    USHORT ModuleProductID;
    USHORT SubsystemControllerManufacturerID;
    USHORT SubsystemControllerProductID;
    ULONGLONG NonVolatileSize;
    ULONGLONG VolatileSize;
    ULONGLONG CacheSize;
    ULONGLONG LogicalSize;
    // 3.3+
    ULONG ExtendedSpeed;
    ULONG ExtendedConfiguredSpeed;
    // 3.7+
    USHORT PMIC0ManufacturerID;
    USHORT PMIC0Revision;
    USHORT RCDManufacturerID;
    USHORT RCDRevision;
} SMBIOS_MEMORY_DEVICE_INFORMATION, *PSMBIOS_MEMORY_DEVICE_INFORMATION;

#include <poppack.h>
#endif

View code on GitHub

No description available.