1.3.4 Timers

IoInitializeTimer

Associates a timer with the given device object and registers a driver-supplied IoTimer routine for the device object.

IoStartTimer

Enables the timer for a given device object and calls the driver-supplied IoTimer routine once per second thereafter.

IoStopTimer

Disables the timer for a given device object so the driver-supplied IoTimer routine is not called unless the driver re-enables the timer.

KeInitializeDpc

Initializes a DPC object, to set up a driver-supplied CustomTimerDpc routine that can be called with a given context.

KeInitializeTimer

Initializes a notification timer object to the Not-Signaled state.

KeInitializeTimerEx

Initializes a notification or synchronization timer object to the Not-Signaled state.

KeSetTimer

Sets the absolute or relative interval at which a timer object will be set to the Signaled state and optionally supplies a timer DPC to be executed when the interval expires.

KeSetTimerEx

Sets the absolute or relative interval at which a timer object will be set to the Signaled state, optionally supplies a timer DPC to be executed when the interval expires, and optionally supplies a recurring interval for the timer.

KeCancelTimer

Cancels a timer object before the interval passed to KeSetTimer expires; dequeues a timer DPC before the timer interval, if any was set, expires.

KeReadStateTimer

Returns whether a given timer object is set to the Signaled state.

KeQuerySystemTime

Returns the current system time.

KeQueryTickCount

Returns the number of interval-timer interrupts that have occurred since the system was booted.

KeQueryTimeIncrement

Returns the number of 100-nanosecond units that are added to the system time at each interval-timer interrupt.

KeQueryPerformanceCounter

Returns the system performance counter value in hertz.