Funzione KeQueryActiveProcessorCountEx (wdm.h)
La routine KeQueryActiveProcessorCountEx restituisce il numero di processori logici attivi in un gruppo specificato in un sistema multiprocessore o nell'intero sistema.
Sintassi
ULONG KeQueryActiveProcessorCountEx(
[in] USHORT GroupNumber
);
Parametri
[in] GroupNumber
Numero del gruppo. Se un sistema multiprocessore contiene n gruppi, i numeri di gruppo validi sono compresi tra 0 e n-1. Per contare tutti i processori attivi in tutti i gruppi del sistema, impostare questo parametro su ALL_PROCESSOR_GROUPS, definito nei file di intestazione Winnt.h e Ntdef.h.
Valore restituito
KeQueryActiveProcessorCountEx restituisce il numero di processori logici attivi nel gruppo. Se GroupNumber non è un numero di gruppo valido e non è ALL_PROCESSOR_GROUPS, restituisce zero.
Commenti
Un processore logico attivo è un processore logico che Windows ha avviato e aggiunto a un sistema multiprocessore. Il termine processore attivo si applica a un processore disponibile per l'esecuzione del lavoro di elaborazione, indipendentemente dal fatto che il processore stia eseguendo il lavoro di elaborazione o sia inattiva. In alcuni sistemi, il numero di processori attivi potrebbe rimanere invariato dall'avvio del sistema all'arresto. In altri sistemi, Windows potrebbe aggiungere dinamicamente processori attivi mentre il sistema è in esecuzione. Windows non rimuove mai i processori attivi da un sistema. Di conseguenza, il numero di processori attivi in un sistema multiprocessore può aumentare tra l'avvio del sistema e l'arresto, ma questo numero non diminuisce mai.
Una routine correlata, KeQueryActiveProcessorCount, restituisce un conteggio del processore attivo, ma questa routine, diversamente da KeQueryActiveProcessorCountEx, non accetta un numero di gruppo come parametro di input. In Windows 7 e versioni successive del sistema operativo Windows , KeQueryActiveProcessorCount restituisce il conteggio del processore attivo nel gruppo 0, compatibile con il comportamento di questa routine nelle versioni precedenti di Windows che non supportano i gruppi. Questo comportamento garantisce che i driver esistenti che chiamano KeQueryActiveProcessorCount e che non usino funzionalità orientate ai gruppi vengano eseguite correttamente nei sistemi multiprocessore con due o più gruppi. Tuttavia, i driver che usano funzionalità orientate ai gruppi in Windows 7 e versioni successive del sistema operativo Windows devono chiamare KeQueryActiveProcessorCountEx anziché KeQueryActiveProcessorCount.
Per un esempio di codice che usa KeQueryActiveProcessorCountEx, vedere KeGetProcessorNumberFromIndex.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows 7 e versioni successive di Windows. |
Piattaforma di destinazione | Universale |
Intestazione | wdm.h (include Ntddk.h, Wdm.h, Ntddk.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Qualsiasi livello |