Freigeben über


KeQuerySystemTimePrecise-Funktion (wdm.h)

Die KeQuerySystemTimePrecise-Routine ruft die aktuelle Systemzeit ab 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

Keine

Bemerkungen

Die Systemzeit beträgt seit dem 1. Januar 1601 Intervalle von 100 Nanosekunden. 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 präziser. Die von KeQuerySystemTime gemeldete Systemzeit basiert auf dem neuesten Tick des Systemuhrtimers. Der Zeitgeber ist der Hardwaretimer, der regelmäßig Interrupts für die Systemuhr generiert. Der gleichmäßige Zeitraum zwischen Den Timer-Interrupts wird als Systemuhr tick bezeichnet und liegt je nach Hardwareplattform in der Regel im Bereich von 500 Mikrosekunden bis 15,625 Millisekunden. Der von KeQuerySystemTime abgerufene Systemzeitwert ist innerhalb einer Systemuhr genau.

Um einen Systemzeitwert bereitzustellen, der genauer ist als der von KeQuerySystemTimeTime, verwendet KeQuerySystemTimePrecise den Systemleistungsindikator, um die verstrichene Zeit seit dem letzten Timer-Interrupt zu messen, und fügt diese Zeit der Systemuhrzeit hinzu, die aus der Anzahl der Zeitgeber berechnet wird. Die von KeQuerySystemTimePrecise gemeldete Systemzeit ist auf eine Mikrosekunde genau.

Auf einigen Hardwareplattformen ist ein KeQuerySystemTimePrecise-Aufruf möglicherweise langsamer als ein KeQuerySystemTime-Aufruf . Der Grund ist, dass KeQuerySystemTimePrecise den Leistungsindikator liest, was zu einer zusätzlichen Verzögerung führen kann. Weitere Informationen finden Sie unter KeQueryPerformanceCounter.

Rufen Sie die KeQueryTimeIncrement-Routine auf, um die Dauer eines Systemuhr ticks zu bestimmen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 8.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Beliebige Ebene

Weitere Informationen

ExSystemTimeToLocalTime

KeQueryPerformanceCounter

KeQuerySystemTime

KeQueryTickCount

KeQueryTimeIncrement