Função KeQueryMaximumProcessorCountEx (ntddk.h)
A rotina KeQueryMaximumProcessorCountEx retorna o número máximo de processadores lógicos em um grupo especificado em um sistema multiprocessador.
Sintaxe
ULONG KeQueryMaximumProcessorCountEx(
[in] USHORT GroupNumber
);
Parâmetros
[in] GroupNumber
Especifica um número de grupo. Se um sistema multiprocessador contiver n grupos, os grupos serão numerados de 0 a n-1. Para obter o número máximo de processadores no sistema, defina esse parâmetro como ALL_PROCESSOR_GROUPS, que é definido nos arquivos de cabeçalho Winnt.h e Ntdef.h.
Retornar valor
KeQueryMaximumProcessorCountEx retorna o número máximo de processadores lógicos no grupo especificado ou no sistema, conforme indicado pelo valor do parâmetro GroupNumber .
Comentários
O valor retornado por KeQueryMaximumProcessorCountEx permanece constante durante o runtime. Esse valor depende da configuração de hardware do sistema multiprocessador, mas nunca pode exceder um limite fixo definido pelo sistema operacional Windows. Esse limite é de 32 processadores lógicos para versões de 32 bits do Windows e 64 processadores lógicos para versões de 64 bits do Windows.
Por outro lado, o valor retornado pela rotina KeQueryActiveProcessorCountEx pode ser alterado durante o runtime à medida que os processadores são adicionados dinamicamente ao sistema.
Uma rotina relacionada, KeQueryMaximumProcessorCount, retorna uma contagem máxima de processadores, mas essa rotina, ao contrário de KeQueryMaximumProcessorCountEx, não aceita um número de grupo como um parâmetro de entrada. No Windows 7 e versões posteriores do sistema operacional Windows, KeQueryMaximumProcessorCount retorna o número máximo de processadores lógicos no grupo 0, que é compatível com o comportamento dessa rotina em versões anteriores do Windows que não dão suporte a grupos. Esse comportamento garante que os drivers existentes que chamam KeQueryMaximumProcessorCount e que não usam recursos orientados a grupos sejam executados corretamente em sistemas multiprocessadores que têm dois ou mais grupos. No entanto, os drivers que usam quaisquer recursos orientados a grupos no Windows 7 e versões posteriores do sistema operacional Windows devem chamar KeQueryMaximumProcessorCountEx em vez de KeQueryMaximumProcessorCount.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows 7 e versões posteriores do Windows. |
Plataforma de Destino | Universal |
Cabeçalho | ntddk.h (inclua Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Qualquer nível |