estrutura SYSTEM_INFO (sysinfoapi.h)

Contém informações sobre o sistema de computador atual. Isso inclui a arquitetura e o tipo do processador, o número de processadores no sistema, o tamanho da página e outras informações desse tipo.

Sintaxe

typedef struct _SYSTEM_INFO {
  union {
    DWORD dwOemId;
    struct {
      WORD wProcessorArchitecture;
      WORD wReserved;
    } DUMMYSTRUCTNAME;
  } DUMMYUNIONNAME;
  DWORD     dwPageSize;
  LPVOID    lpMinimumApplicationAddress;
  LPVOID    lpMaximumApplicationAddress;
  DWORD_PTR dwActiveProcessorMask;
  DWORD     dwNumberOfProcessors;
  DWORD     dwProcessorType;
  DWORD     dwAllocationGranularity;
  WORD      wProcessorLevel;
  WORD      wProcessorRevision;
} SYSTEM_INFO, *LPSYSTEM_INFO;

Membros

DUMMYUNIONNAME

DUMMYUNIONNAME.dwOemId

Um membro obsoleto que é retido para compatibilidade. Os aplicativos devem usar o branch wProcessorArchitecture da união.

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.wProcessorArchitecture

A arquitetura do processador do sistema operacional instalado. Esse membro pode ser um dos valores a seguir.

Valor Significado
PROCESSOR_ARCHITECTURE_AMD64
9
x64 (AMD ou Intel)
PROCESSOR_ARCHITECTURE_ARM
5
ARM
PROCESSOR_ARCHITECTURE_ARM64
12
ARM64
PROCESSOR_ARCHITECTURE_IA64
6
Baseado em Intel Itanium
PROCESSOR_ARCHITECTURE_INTEL
0
x86
PROCESSOR_ARCHITECTURE_UNKNOWN
0xffff
Arquitetura desconhecida.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.wReserved

Este membro é reservado para uso futuro.

dwPageSize

O tamanho da página e a granularidade da proteção e do compromisso da página. Esse é o tamanho da página usado pela função VirtualAlloc .

lpMinimumApplicationAddress

Um ponteiro para o endereço de memória mais baixo acessível para aplicativos e DLLs (bibliotecas de vínculo dinâmico).

lpMaximumApplicationAddress

Um ponteiro para o endereço de memória mais alto acessível a aplicativos e DLLs.

dwActiveProcessorMask

Uma máscara que representa o conjunto de processadores configurados no sistema. O bit 0 é o processador 0; o bit 31 é o processador 31.

dwNumberOfProcessors

O número de processadores lógicos no grupo atual. Para recuperar o grupo de processadores atual, use a função GetLogicalProcessorInformation .

Nota Para obter informações sobre os processadores físicos compartilhados por processadores lógicos, chame GetLogicalProcessorInformationEx com o parâmetro RelationshipType definido como RelationProcessorPackage (3).
 

dwProcessorType

Um membro obsoleto que é retido para compatibilidade. Use os membros wProcessorArchitecture, wProcessorLevel e wProcessorRevision para determinar o tipo de processador.

PROCESSOR_INTEL_386 (386)

PROCESSOR_INTEL_486 (486)

PROCESSOR_INTEL_PENTIUM (586)

PROCESSOR_INTEL_IA64 (2200)

PROCESSOR_AMD_X8664 (8664)

PROCESSOR_ARM (Reservado)

dwAllocationGranularity

A granularidade do endereço inicial no qual a memória virtual pode ser alocada. Para obter mais informações, consulte VirtualAlloc.

wProcessorLevel

O nível do processador dependente da arquitetura. Ele deve ser usado apenas para fins de exibição. Para determinar o conjunto de recursos de um processador, use a função IsProcessorFeaturePresent .

Se wProcessorArchitecture for PROCESSOR_ARCHITECTURE_INTEL, wProcessorLevel será definido pelo fornecedor da CPU.

Se wProcessorArchitecture for PROCESSOR_ARCHITECTURE_IA64, wProcessorLevel será definido como 1.

wProcessorRevision

A revisão do processador dependente da arquitetura. A tabela a seguir mostra como o valor de revisão é montado para cada tipo de arquitetura de processador.

Processador Valor
Intel Pentium, Cyrix ou NextGen 586 O byte alto é o modelo e o byte baixo é a etapa. Por exemplo, se o valor for xxyy, o número do modelo e a etapa poderão ser exibidos da seguinte maneira:

Modelo xx, Step yy

Intel 80386 ou 80486 Um valor do formulário xxyz.

Se xx for igual a 0xFF, y - 0xA é o número do modelo e z é o identificador de etapa.

Se xx não for igual a 0xFF, xx + 'A' será a letra de etapa e yz será o menor passo.

ARM Reservado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Cabeçalho sysinfoapi.h (inclua Windows.h)

Confira também

GetNativeSystemInfo

Getsysteminfo

Mapviewoffile

MapViewOfFileEx