Compartilhar via


estrutura SYSTEM_LOGICAL_PROCESSOR_INFORMATION (winnt.h)

Descreve a relação entre o conjunto de processadores especificado. Essa estrutura é usada com a função GetLogicalProcessorInformation .

Sintaxe

typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION {
  ULONG_PTR                      ProcessorMask;
  LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
  union {
    struct {
      BYTE Flags;
    } ProcessorCore;
    struct {
      DWORD NodeNumber;
    } NumaNode;
    CACHE_DESCRIPTOR Cache;
    ULONGLONG        Reserved[2];
  } DUMMYUNIONNAME;
} SYSTEM_LOGICAL_PROCESSOR_INFORMATION, *PSYSTEM_LOGICAL_PROCESSOR_INFORMATION;

Membros

ProcessorMask

A máscara de processador que identifica os processadores descritos por essa estrutura. Uma máscara de processador é um vetor de bits no qual cada bit de conjunto representa um processador ativo na relação. Pelo menos um bit será definido.

Em um sistema com mais de 64 processadores, a máscara de processador identifica processadores em um único grupo de processadores.

Relationship

A relação entre os processadores identificados pelo valor do membro ProcessorMask . Esse membro pode ser um dos seguintes valores de LOGICAL_PROCESSOR_RELATIONSHIP .

Valor Significado
RelationCache
2
Os processadores lógicos especificados compartilham um cache. O membro Cache contém informações adicionais.

Windows Server 2003: Esse valor não tem suporte até o Windows Server 2003 com SP1 e Windows XP Professional x64 Edition.

RelationNumaNode
1
Os processadores lógicos especificados fazem parte do mesmo nó NUMA. O membro NumaNode contém informações adicionais.
RelationProcessorCore
0
Os processadores lógicos especificados compartilham um único núcleo de processador. O membro ProcessorCore contém informações adicionais.
RelationProcessorPackage
3
Os processadores lógicos especificados compartilham um pacote físico. Não há informações adicionais disponíveis.

Windows Server 2003 e Windows XP Professional x64 Edition: Esse valor não tem suporte até o Windows Server 2003 com SP1 e Windows XP com SP3.

 

Versões futuras do Windows podem dar suporte a valores adicionais para o membro Relationship .

DUMMYUNIONNAME

DUMMYUNIONNAME.ProcessorCore

Essa estrutura conterá dados válidos somente se o membro Relationship for RelationProcessorCore.

DUMMYUNIONNAME.ProcessorCore.Flags

Se o valor desse membro for 1, os processadores lógicos identificados pelo valor do membro ProcessorMask compartilham unidades funcionais, como no Hyperthreading ou no SMT. Caso contrário, os processadores lógicos identificados não compartilham unidades funcionais.

Windows Server 2003 e Windows XP Professional x64 Edition: Esse membro também é 1 para núcleos que compartilham um pacote físico. Portanto, para determinar se o processador dá suporte a vários núcleos ou hyperthreading em sistemas anteriores ao Windows Vista, use a instrução CPUID.

DUMMYUNIONNAME.NumaNode

Essa estrutura conterá dados válidos somente se o membro Relationship for RelationNumaNode.

DUMMYUNIONNAME.NumaNode.NodeNumber

Identifica o nó NUMA . Os valores válidos desse parâmetro são 0 para o número de nó NUMA mais alto, inclusive. Um sistema multiprocessador não NUMA relatará que todos os processadores pertencem a um nó NUMA.

DUMMYUNIONNAME.Cache

Uma estrutura CACHE_DESCRIPTOR que identifica as características de um cache específico. Há um registro retornado para cada cache relatado. Alguns ou todos os caches podem não ser relatados, dependendo do mecanismo usado pelo processador para identificar seus caches. Portanto, não suponha a ausência de caches específicos. Os caches não são necessariamente compartilhados entre processadores lógicos.

Essa estrutura conterá dados válidos somente se o membro Relationship for RelationCache.

Windows Server 2003: Esse membro não tem suporte até o Windows Server 2003 com SP1 e Windows XP Professional x64 Edition.

DUMMYUNIONNAME.Reserved[2]

Reservado. Não use.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista, Windows XP Professional x64 Edition [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho winnt.h (inclua Windows.h)

Confira também

CACHE_DESCRIPTOR

GetLogicalProcessorInformation

GetLogicalProcessorInformationEx

LOGICAL_PROCESSOR_RELATIONSHIP

SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX