HMAT_ENTRY 结构 (acpitabl.h)

HMAT_ENTRY 结构包含异类内存属性表 (HMAT) 表的信息。 结构可以包含三种 HMAT 类型之一:内存子系统地址范围 (MSAR) 、系统本地延迟和带宽信息 (SLLBI) ,或内存端缓存信息 (MSCI) 。

语法

typedef struct _HMAT_ENTRY {
  USHORT Type;
  USHORT Reserved;
  ULONG  Length;
  union {
    struct {
      union {
        struct {
          USHORT ProcessorProximityDomainValid : 1;
          USHORT MemoryProximityDomainValid : 1;
          USHORT ReservationHint : 1;
          USHORT Reserved : 13;
        } DUMMYSTRUCTNAME;
        USHORT AsUSHort;
      } Flags;
      USHORT           Reserved1;
      ULONG            ProcessorProximityDomain;
      ULONG            MemoryProximityDomain;
      ULONG            Reserved2;
      PHYSICAL_ADDRESS SystemPhysicalAddressRangeBase;
      ULONGLONG        SystemPhysicalAddressRangeLength;
    } Msar;
    struct {
      union {
        struct {
          UCHAR Memory : 1;
          UCHAR LastLevelMemory : 1;
          UCHAR FirstLevelMemorySideCache : 1;
          UCHAR SecondLevelMemorySideCache : 1;
          UCHAR ThirdLevelMemorySideCache : 1;
          UCHAR Reserved : 3;
        } DUMMYSTRUCTNAME;
        UCHAR AsUChar;
      } Flags;
      UCHAR     DataType;
      USHORT    Reserved1;
      ULONG     NumberOfInitiatorProximityDomains;
      ULONG     NumberOfTargetProximityDomains;
      ULONG     Reserved2;
      ULONGLONG EntryBaseUnit;
    } Sllbi;
    struct {
      ULONG     MemoryProximityDomain;
      ULONG     Reserved1;
      ULONGLONG MemorySideCacheSize;
      union {
        struct {
          ULONG TotalCacheLevels : 4;
          ULONG CacheLevel : 4;
          ULONG CacheAssociativity : 4;
          ULONG WritePolicy : 4;
          ULONG CacheLineSize : 16;
        } DUMMYSTRUCTNAME;
        ULONG AsULong;
      } CacheAttributes;
      USHORT    Reserved2;
      USHORT    NumberOfSmBiosHandles;
    } Msci;
  } DUMMYUNIONNAME;
} HMAT_ENTRY, *PHMAT_ENTRY;

成员

Type

包含 HMAT 表类型的 USHORT 值。

Reserved

保留供将来使用。

Length

包含表大小的 ULONG 值。

DUMMYUNIONNAME

DUMMYUNIONNAME.Msar

DUMMYUNIONNAME.Msar.Flags

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.ProcessorProximityDomainValid

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.MemoryProximityDomainValid

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.ReservationHint

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.Reserved

DUMMYUNIONNAME.Msar.Flags.AsUSHort

DUMMYUNIONNAME.Msar.Reserved1

DUMMYUNIONNAME.Msar.ProcessorProximityDomain

DUMMYUNIONNAME.Msar.MemoryProximityDomain

DUMMYUNIONNAME.Msar.Reserved2

DUMMYUNIONNAME.Msar.SystemPhysicalAddressRangeBase

DUMMYUNIONNAME.Msar.SystemPhysicalAddressRangeLength

DUMMYUNIONNAME.Sllbi

DUMMYUNIONNAME.Sllbi.Flags

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.Memory

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.LastLevelMemory

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.FirstLevelMemorySideCache

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.SecondLevelMemorySideCache

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.ThirdLevelMemorySideCache

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.Reserved

DUMMYUNIONNAME.Sllbi.Flags.AsUChar

DUMMYUNIONNAME.Sllbi.DataType

DUMMYUNIONNAME.Sllbi.Reserved1

DUMMYUNIONNAME.Sllbi.NumberOfInitiatorProximityDomains

DUMMYUNIONNAME.Sllbi.NumberOfTargetProximityDomains

DUMMYUNIONNAME.Sllbi.Reserved2

DUMMYUNIONNAME.Sllbi.EntryBaseUnit

DUMMYUNIONNAME.Msci

DUMMYUNIONNAME.Msci.MemoryProximityDomain

DUMMYUNIONNAME.Msci.Reserved1

DUMMYUNIONNAME.Msci.MemorySideCacheSize

DUMMYUNIONNAME.Msci.CacheAttributes

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.TotalCacheLevels

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheLevel

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheAssociativity

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.WritePolicy

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheLineSize

DUMMYUNIONNAME.Msci.CacheAttributes.AsULong

DUMMYUNIONNAME.Msci.Reserved2

DUMMYUNIONNAME.Msci.NumberOfSmBiosHandles

要求

要求
Header acpitabl.h