Поделиться через


структура 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 Reserved0 : 1;
          USHORT Reserved1 : 1;
          USHORT Reserved : 13;
        } DUMMYSTRUCTNAME;
        USHORT AsUSHort;
      } Flags;
      USHORT    Reserved1;
      ULONG     ProcessorProximityDomain;
      ULONG     MemoryProximityDomain;
      ULONG     Reserved2;
      ULONGLONG Reserved3;
      ULONGLONG Reserved4;
    } Msar;
    struct {
      union {
        struct {
          UCHAR MemoryHierarchy : 4;
          UCHAR MinTransferSizeToAchieveValues : 1;
          UCHAR NonSequentialTransfers : 1;
          UCHAR Reserved : 2;
        } DUMMYSTRUCTNAME;
        UCHAR AsUChar;
      } Flags;
      UCHAR     DataType;
      UCHAR     MinTransferSize;
      UCHAR     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

Значение USHORT, содержащее тип таблицы HMAT.

Reserved

Зарезервировано для дальнейшего использования.

Length

Значение ULONG, содержащее размер таблицы.

DUMMYUNIONNAME

Определяет объединение DUMMYUNIONNAME.

DUMMYUNIONNAME.Msar

Определяет структуру msar.

DUMMYUNIONNAME.Msar.Flags

Определяет объединение флагов .

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME

Определяет структуру DUMMYSTRUCTNAME.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.ProcessorProximityDomainValid

Определяет элемент USHORTProcessorProximityDomainValid.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.Reserved0

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.Reserved1

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.Reserved

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msar.Flags.AsUSHort

Определяет члена USHORTAsUSHort.

DUMMYUNIONNAME.Msar.Reserved1

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msar.ProcessorProximityDomain

Определяет член ULONGProcessorProximityDomain.

DUMMYUNIONNAME.Msar.MemoryProximityDomain

Определяет член ULONGMemoryProximityDomain.

DUMMYUNIONNAME.Msar.Reserved2

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msar.Reserved3

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msar.Reserved4

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Sllbi

Определяет объединение Sllbi.

DUMMYUNIONNAME.Sllbi.Flags

Определяет объединение флагов .

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME

Определяет структуру DUMMYSTRUCTNAME.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.MemoryHierarchy

Определяет элемент UCHAR MemoryHierarchy.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.MinTransferSizeToAchieveValues

Определяет элемент UCHAR UCHAR MinTransferSizeToAchieveValues.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.NonSequentialTransfers

Определяет элемент UCHAR NonSequentialTransfers.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.Reserved

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Sllbi.Flags.AsUChar

Определяет член UCHARAsUChar.

DUMMYUNIONNAME.Sllbi.DataType

Определяет элемент UCHAR DataType.

DUMMYUNIONNAME.Sllbi.MinTransferSize

Определяет элемент UCHAR MinTransferSize.

DUMMYUNIONNAME.Sllbi.Reserved1

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Sllbi.NumberOfInitiatorProximityDomains

Определяет член ULONGNumberOfInitiatorProximityDomains.

DUMMYUNIONNAME.Sllbi.NumberOfTargetProximityDomains

Определяет член ULONGNumberOfTargetProximityDomains.

DUMMYUNIONNAME.Sllbi.Reserved2

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Sllbi.EntryBaseUnit

Определяет член ULONGLONGEntryBaseUnit.

DUMMYUNIONNAME.Msci

Определяет объединение Msci.

DUMMYUNIONNAME.Msci.MemoryProximityDomain

Определяет член ULONGMemoryProximityDomain.

DUMMYUNIONNAME.Msci.Reserved1

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msci.MemorySideCacheSize

Определяет член ULONGLONGMemorySideCacheSize.

DUMMYUNIONNAME.Msci.CacheAttributes

Определяет объединение CacheAttributes.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME

Определяет структуру DUMMYSTRUCTNAME.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.TotalCacheLevels

Определяет член ULONGTotalCacheLevels.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheLevel

Определяет элемент ULONGCacheLevel.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheAssociativity

Определяет элемент ULONG CacheAssociativity.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.WritePolicy

Определяет член ULONGWritePolicy.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheLineSize

Определяет член ULONGCacheLineSize.

DUMMYUNIONNAME.Msci.CacheAttributes.AsULong

Определяет член ULONGAsULong.

DUMMYUNIONNAME.Msci.Reserved2

Зарезервировано для дальнейшего использования.

DUMMYUNIONNAME.Msci.NumberOfSmBiosHandles

Определяет элемент USHORTNumberOfSmBiosHandles.

Требования

Требование Ценность
заголовка acpitabl.h