Funzione KeQueryUnbiasedInterruptTime (wdm.h)
La routine KeQueryUnbiasedInterruptTime restituisce il valore corrente del tempo di interrupt del sistema.
Sintassi
ULONGLONG KeQueryUnbiasedInterruptTime();
Valore restituito
KeQueryUnbiasedInterruptTime restituisce il numero di tempo di interrupt corrente in unità da 100 nanosecondi. Il conteggio inizia a zero all'avvio del computer. Gli aggiornamenti a questo conteggio vengono sospesi quando il computer entra in stato di sospensione e viene ripreso al risveglio del computer.
Osservazioni
I driver in modalità kernel possono chiamare questa routine per misurare durate relativamente granulari.
Questa routine restituisce l'ora di interruzione del sistema, ovvero la quantità di tempo trascorsa dall'ultimo avvio del sistema operativo. Il conteggio di interrupt-time inizia a zero all'avvio del sistema operativo e viene incrementato a ogni interrupt di clock per la lunghezza di un segno di spunta dell'orologio. Per vari motivi, ad esempio le differenze hardware, la lunghezza di un tick dell'orologio di sistema può variare tra i computer. Chiamare la routine KeQueryTimeIncrement per determinare le dimensioni di un tick dell'orologio di sistema.
I KeQueryUnbiasedInterruptTime e KeQueryInterruptTime routine sono simili, ma differiscono in base ai periodi in cui il sistema operativo sospende gli aggiornamenti del conteggio dei tempi di interrupt. Ad esempio, questi aggiornamenti vengono sospesi mentre il computer è in stato di sospensione del sistema. Per compensare i periodi in cui gli aggiornamenti del conteggio vengono sospesi, KeQueryInterruptTime restituisce un valore di conteggio distorto calcolato aggiungendo un conteggio delle distorsioni al conteggio dei tempi di interruzione non elaborati. Il conteggio delle distorsioni è la somma stimata di tutti gli aggiornamenti al conteggio dei tempi di interrupt che il sistema operativo ha perso durante la sospensione del conteggio. Al contrario, KeQueryUnbiasedInterruptTime restituisce il conteggio non elaborato e non distorto.
A differenza della routine KeQuerySystemTime, KeQueryUnbiasedInterruptTime restituisce un valore di conteggio non interessato dalle operazioni che impostano o reimpostano l'ora di sistema. Inoltre, l'ora di sistema segnalata da KeQuerySystemTime viene in genere aggiornata approssimativamente ogni dieci millisecondi. Al contrario, il conteggio restituito da KeQueryUnbiasedInterruptTime viene aggiornato almeno una volta per ogni tick del clock di sistema.
In Windows 2000 e versioni successive del sistema operativo Windows, la routine KeQueryPerformanceCounter fornisce il conteggio di esecuzione più dettagliato disponibile dal sistema operativo.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile a partire da Windows 7. |
piattaforma di destinazione | Universale |
intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
libreria | NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | Qualsiasi livello |