Fonction KeQueryMaximumProcessorCountEx (wdm.h)
La routine KeQueryMaximumProcessorCountEx retourne le nombre maximal de processeurs logiques dans un groupe spécifié dans un système multiprocesseur.
Syntaxe
ULONG KeQueryMaximumProcessorCountEx(
[in] USHORT GroupNumber
);
Paramètres
[in] GroupNumber
Spécifie un numéro de groupe. Si un système multiprocesseur contient n groupes, les groupes sont numérotés de 0 à n-1. Pour obtenir le nombre maximal de processeurs dans le système, définissez ce paramètre sur ALL_PROCESSOR_GROUPS, qui est défini dans les fichiers d’en-tête Winnt.h et Ntdef.h.
Valeur retournée
KeQueryMaximumProcessorCountEx retourne le nombre maximal de processeurs logiques dans le groupe spécifié ou dans le système, comme indiqué par la valeur du paramètre GroupNumber .
Remarques
La valeur retournée par KeQueryMaximumProcessorCountEx reste constante pendant l’exécution. Cette valeur dépend de la configuration matérielle du système multiprocesseur, mais elle ne peut jamais dépasser une limite fixe définie par le système d’exploitation Windows. Cette limite est de 32 processeurs logiques pour les versions 32 bits de Windows et 64 processeurs logiques pour les versions 64 bits de Windows.
En revanche, la valeur retournée par la routine KeQueryActiveProcessorCountEx peut changer pendant l’exécution, car les processeurs sont ajoutés dynamiquement au système.
Une routine associée, KeQueryMaximumProcessorCount, retourne un nombre maximal de processeurs, mais cette routine, contrairement à KeQueryMaximumProcessorCountEx, n’accepte pas de numéro de groupe comme paramètre d’entrée. Dans Windows 7 et versions ultérieures du système d’exploitation Windows, KeQueryMaximumProcessorCount retourne le nombre maximal de processeurs logiques dans le groupe 0, qui est compatible avec le comportement de cette routine dans les versions antérieures de Windows qui ne prennent pas en charge les groupes. Ce comportement garantit que les pilotes existants qui appellent KeQueryMaximumProcessorCount et qui n’utilisent aucune fonctionnalité orientée groupe s’exécutent correctement dans les systèmes multiprocesseurs qui ont deux groupes ou plus. Toutefois, les pilotes qui utilisent des fonctionnalités orientées groupe dans Windows 7 et versions ultérieures du système d’exploitation Windows doivent appeler KeQueryMaximumProcessorCountEx au lieu de KeQueryMaximumProcessorCount.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows 7 et versions ultérieures de Windows. |
Plateforme cible | Universal |
En-tête | wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | N’importe quel niveau |