struttura HMAT_ENTRY (acpitabl.h)

La struttura HMAT_ENTRY contiene le informazioni HMAT (Heterogeneous Memory Attribute Table) per la tabella. La struttura può contenere uno dei tre tipi HMAT: MSAR (Memory Subsystem Address Range), System Locality Latency and Bandwidth Information (SLLBI) o Memory Side Cache Information (MSCI).

Sintassi

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;

Members

Type

Valore USHORT contenente il tipo di tabella HMAT.

Reserved

Riservato per utilizzi futuri.

Length

Valore ULONG contenente le dimensioni della tabella.

DUMMYUNIONNAME

Definisce l'unione DUMMYUNIONNAME .

DUMMYUNIONNAME.Msar

Definisce la struttura Msar .

DUMMYUNIONNAME.Msar.Flags

Definisce l'unione flag.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME

Definisce la struttura DUMMYSTRUCTNAME .

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.ProcessorProximityDomainValid

Definisce il membro USHORTProcessorProximityDomainValid.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.Reserved0

Riservato per usi futuri.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.Reserved1

Riservato per usi futuri.

DUMMYUNIONNAME.Msar.Flags.DUMMYSTRUCTNAME.Reserved

Riservato per usi futuri.

DUMMYUNIONNAME.Msar.Flags.AsUSHort

Definisce il membro USHORTAsUSHort.

DUMMYUNIONNAME.Msar.Reserved1

Riservato per utilizzi futuri.

DUMMYUNIONNAME.Msar.ProcessorProximityDomain

Definisce il membro ULONGProcessorProximityDomain.

DUMMYUNIONNAME.Msar.MemoryProximityDomain

Definisce il membro ULONGMemoryProximityDomain.

DUMMYUNIONNAME.Msar.Reserved2

Riservato per usi futuri.

DUMMYUNIONNAME.Msar.Reserved3

Riservato per usi futuri.

DUMMYUNIONNAME.Msar.Reserved4

Riservato per usi futuri.

DUMMYUNIONNAME.Sllbi

Definisce l'unione Sllbi .

DUMMYUNIONNAME.Sllbi.Flags

Definisce l'unione flag.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME

Definisce la struttura DUMMYSTRUCTNAME .

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.MemoryHierarchy

Definisce il membro UCHARMemoryHierarchy.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.MinTransferSizeToAchieveValues

Definisce il membro UCHARMinTransferSizeToAchieveValues.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.NonSequentialTransfers

Definisce il membro UCHARNonSequentialTransfers.

DUMMYUNIONNAME.Sllbi.Flags.DUMMYSTRUCTNAME.Reserved

Riservato per utilizzi futuri.

DUMMYUNIONNAME.Sllbi.Flags.AsUChar

Definisce il membro UCHARAsUChar.

DUMMYUNIONNAME.Sllbi.DataType

Definisce il tipo di dati del membro UCHAR.

DUMMYUNIONNAME.Sllbi.MinTransferSize

Definisce il membro UCHARMinTransferSize.

DUMMYUNIONNAME.Sllbi.Reserved1

Riservato per utilizzi futuri.

DUMMYUNIONNAME.Sllbi.NumberOfInitiatorProximityDomains

Definisce il membro ULONGNumberOfInitiatorProximityDomains.

DUMMYUNIONNAME.Sllbi.NumberOfTargetProximityDomains

Definisce il membro ULONGNumberOfTargetProximityDomains.

DUMMYUNIONNAME.Sllbi.Reserved2

Riservato per utilizzi futuri.

DUMMYUNIONNAME.Sllbi.EntryBaseUnit

Definisce il membro ULONGEntryBaseUnit.

DUMMYUNIONNAME.Msci

Definisce l'unione Msci .

DUMMYUNIONNAME.Msci.MemoryProximityDomain

Definisce il membro ULONGMemoryProximityDomain.

DUMMYUNIONNAME.Msci.Reserved1

Riservato per utilizzi futuri.

DUMMYUNIONNAME.Msci.MemorySideCacheSize

Definisce il membro ULONGMemorySideCacheSize.

DUMMYUNIONNAME.Msci.CacheAttributes

Definisce l'unione CacheAttributes .

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME

Definisce la struttura DUMMYSTRUCTNAME .

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.TotalCacheLevels

Definisce il membro ULONGTotalCacheLevels.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheLevel

Definisce il membro ULONGCacheLevel.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheAssociativity

Definisce il membro ULONG CacheAssociativity.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.WritePolicy

Definisce il membro ULONGWritePolicy.

DUMMYUNIONNAME.Msci.CacheAttributes.DUMMYSTRUCTNAME.CacheLineSize

Definisce il membro ULONGCacheLineSize.

DUMMYUNIONNAME.Msci.CacheAttributes.AsULong

Definisce il membro ULONGAsULong.

DUMMYUNIONNAME.Msci.Reserved2

Riservato per utilizzi futuri.

DUMMYUNIONNAME.Msci.NumberOfSmBiosHandles

Definisce il membro USHORTNumberOfSmBiosHandles.

Requisiti

Requisito Valore
Intestazione acpitabl.h