KeQuerySystemTimePrecise-Funktion (wdm.h)
Die KeQuerySystemTimePrecise Routine ruft die aktuelle Systemzeitab und ist präziser als die KeQuerySystemTime Routine.
Syntax
void KeQuerySystemTimePrecise(
[out] PLARGE_INTEGER CurrentTime
);
Parameter
[out] CurrentTime
Ein Zeiger auf eine LARGE_INTEGER Variable, in die die Routine die aktuelle Systemzeit schreibt.
Rückgabewert
Nichts
Bemerkungen
Die Systemzeit ist eine Anzahl von 100-Nanosekunden-Intervallen seit dem 1. Januar 1601. Dieser Wert wird für die GMT-Zeitzone berechnet. Um diesen Wert für die lokale Zeitzone anzupassen, rufen Sie die ExSystemTimeToLocalTime Routine auf.
KeQuerySystemTimePrecise ähnelt der KeQuerySystemTime Routine, ist aber genauer. Die von KeQuerySystemTime gemeldete Systemzeitzeit basiert auf dem neuesten Tick des Systemuhrzeitgebers. Der Zeitgeber ist der Hardwaretimer, der regelmäßig Unterbrechungen für die Systemuhr generiert. Der einheitliche Zeitraum zwischen Zeitgeberunterbrüchen wird als Systemuhrstrich bezeichnet und liegt in der Regel im Bereich von 500 Mikrosekunden bis 15,625 Millisekunden, je nach Hardwareplattform. Der von KeQuerySystemTime abgerufene Systemzeitwert ist innerhalb eines Systemuhrstrichs genau.
Um einen Systemzeitwert bereitzustellen, der genauer als der von KeQuerySystemTimeist, verwendet KeQuerySystemTimePrecise den Systemleistungsindikator, um die verstrichene Zeit seit dem letzten Zeitgeberunterbrechung zu messen, und fügt diese Uhrzeit der Systemuhrzeit hinzu, die von der Anzahl der Zeitgeber berechnet wird. Die von KeQuerySystemTimePrecise gemeldete Systemzeit ist innerhalb einer Mikrosekunden genau.
Auf einigen Hardwareplattformen ist ein KeQuerySystemTimePrecise Aufruf möglicherweise langsamer als ein KeQuerySystemTime Aufruf. Der Grund dafür ist, dass KeQuerySystemTimePrecise den Leistungsindikator liest, der eine zusätzliche Verzögerung darstellen kann. Weitere Informationen finden Sie unter KeQueryPerformanceCounter.
Rufen Sie die KeQueryTimeIncrement Routine auf, um die Dauer eines Systemuhrstrichs zu bestimmen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar ab Windows 8. |
Zielplattform- | Universal |
Header- | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | Beliebige Ebene |