KeQueryUnbiasedInterruptTime 函式 (wdm.h)
KeQueryUnbiasedInterruptTime 例程會傳回系統目前的值,中斷時間 計數。
語法
ULONGLONG KeQueryUnbiasedInterruptTime();
傳回值
KeQueryUnbiasedInterruptTime 會以 100 奈秒為單位傳回目前的中斷時間計數。 當計算機啟動時,計數會從零開始。 當計算機進入睡眠狀態,並在計算機覺醒時繼續時,暫停此計數的更新。
言論
核心模式驅動程式可以呼叫此例程來測量相對精細的持續時間。
此例程會傳回系統中斷時間,這是上次啟動作系統之後的時間量。 當作系統啟動時,插斷時間計數會從零開始,並在每個時鐘中斷時遞增的時鐘刻度長度。 基於各種原因,例如硬體差異,系統時鐘刻度長度可能會因計算機而異。 呼叫 KeQueryTimeIncrement 例程,以判斷系統時鐘刻度的大小。
KeQueryUnbiasedInterruptTime 和 KeQueryInterruptTime 例程很類似,但它們會因作系統暫停中斷時間計數更新的期間而有所不同。 例如,當計算機處於系統睡眠狀態時,這些更新會暫停。 為了補償暫停計數更新的期間,KeQueryInterruptTime 傳回其計算的偏差計數值,方法是將偏差計數新增至原始中斷時間計數。 偏差計數是作系統在計數暫停時遺漏之中斷時間計數之所有更新的估計總和。 相反地,KeQueryUnbiasedInterruptTime 會傳回未經偏差的原始計數。
不同於 KeQuerySystemTime 例程,KeQueryUnbiasedInterruptTime 會傳回計數值,而不受設定或重設系統時間的作業影響。 此外,KeQuerySystemTime 所報告的系統時間通常會大約每 10 毫秒更新一次。 相反地,KeQueryUnbiasedInterruptTime 傳回的計數會在每個系統時鐘刻度更新至少一次。
在 Windows 2000 和更新版本的 Windows作系統中,KeQueryPerformanceCounter 例程會提供作系統所提供的最細微執行計數。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 7 開始提供。 |
目標平臺 | 普遍 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 任何層級 |