Funzione NdisGetCurrentProcessorCounts (ndis.h)
La funzione NdisGetCurrentProcessorCounts restituisce i conteggi per il processore corrente che un driver può usare per determinare l'utilizzo della CPU per un intervallo di tempo specifico.
Sintassi
void NdisGetCurrentProcessorCounts(
[out] PULONG pIdleCount,
[out] PULONG pKernelAndUser,
[out] PULONG pIndex
);
Parametri
[out] pIdleCount
Puntatore a una variabile fornita dal chiamante in cui questa funzione restituisce il tempo di inattività cumulativo per il processore dall'avvio del sistema.
[out] pKernelAndUser
Puntatore a una variabile fornita dal chiamante in cui questa funzione restituisce il tempo di elaborazione cumulativo (tempo in modalità kernel più tempo della modalità utente) per il processore dall'avvio del sistema.
[out] pIndex
Puntatore a una variabile fornita dal chiamante in cui questa funzione restituisce un indice in base zero che identifica il processore all'interno del computer.
Valore restituito
nessuno
Osservazioni
NdisGetCurrentProcessorCounts restituisce i conteggi di inattività e utilizzo della CPU che il chiamante può usare per determinare l'utilizzo della CPU per il processore corrente. Il valore di utilizzo della CPU indica come è stata caricata la CPU dopo la chiamata immediatamente precedente a questa funzione. Se la CPU è stata caricata pesantemente, tale driver può modificare il modo in cui gestisce determinate operazioni per migliorare le prestazioni del driver.
CpuUsage = 100-100*(Idle - Idle[n])/(KernelAndUser - KernelAndUser[n]);
dove:
- CpuUsage è l'utilizzo della CPU come percentuale del tempo di intervallo totale
- Idle è il valore IdleCount restituito dalla chiamata più recente a NdisGetCurrentProcessorCounts
- Idle[n] è un valore IdleCount restituito da una chiamata precedente, archiviato come elemento n in una matrice
- KernelandUser è il valore KernelAndUser restituito dalla chiamata più recente a NdisGetCurrentProcessorCounts
- KernelandUser[n] è il valore KernelandUser restituito da una chiamata precedente, archiviato come elemento n in una matrice
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato per i driver NDIS 6.0 e versioni successive in Windows Vista e versioni successive. Supportato per i driver NDIS 5.1 (vedere NdisGetCurrentProcessorCounts (NDIS 5.1)) in Windows XP e versioni successive. |
Piattaforma di destinazione | Universale |
Intestazione | ndis.h (include Ndis.h) |
Libreria | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Regole di conformità DDI | Irql_Miscellaneous_Function(ndis) |