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


структура 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

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

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.MinTransferSizeToAchieveValues

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

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.NonSequentialTransfers

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

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.Reserved

Зарезервировано для последующего использования.

DUMMYUNIONNAME.Sllbi.Flags.AsUChar

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

DUMMYUNIONNAME.Sllbi.DataType

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

DUMMYUNIONNAME.Sllbi.MinTransferSize

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

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