Windows Vista Tips

Windows Vista Tips > Newsgroups > Windows Vista Drivers > timeGetTime versus KeQueryInterruptTime

Reply
Thread Tools Display Modes

timeGetTime versus KeQueryInterruptTime

 
 
Matt Gonzalez
Guest
Posts: n/a

 
      12-12-2007
Is KeQueryInterruptTime equivalent to timeGetTime?

By "equivalent" I don't mean that they return the same value or the
same units; I am asking if they are derived from the same physical
clock. To put it another way, if you made repeated calls to both
functions over time, would you see drift between the two or would they
remain in sync?

I found an entry in Larry Osterman's blog where he states that
"timeGetTime() reads a field called the "interrupt time", which is
updated periodically by the kernel". While this is not quite
definitive documentation, it does strongly suggest that the two are
equivalent.
 
Reply With Quote
 
 
 
 
Tim Roberts
Guest
Posts: n/a

 
      12-13-2007
Matt Gonzalez <> wrote:
>
>Is KeQueryInterruptTime equivalent to timeGetTime?
>
>By "equivalent" I don't mean that they return the same value or the
>same units; I am asking if they are derived from the same physical
>clock. To put it another way, if you made repeated calls to both
>functions over time, would you see drift between the two or would they
>remain in sync?
>
>I found an entry in Larry Osterman's blog where he states that
>"timeGetTime() reads a field called the "interrupt time", which is
>updated periodically by the kernel". While this is not quite
>definitive documentation, it does strongly suggest that the two are
>equivalent.


Disassembly reveals the answer. timeGetTime() returns the qword at
0x7FFE0008. KeQueryInterruptTime() returns the qword at 0xFFDF0008.

Both addresses point to the same physical address.
--
Tim Roberts,
Providenza & Boekelheide, Inc.
 
Reply With Quote
 
 
 
 
Matt Gonzalez
Guest
Posts: n/a

 
      12-13-2007
Tim Roberts wrote:
> Matt Gonzalez <> wrote:
>> Is KeQueryInterruptTime equivalent to timeGetTime?
>>
>> By "equivalent" I don't mean that they return the same value or the
>> same units; I am asking if they are derived from the same physical
>> clock. To put it another way, if you made repeated calls to both
>> functions over time, would you see drift between the two or would they
>> remain in sync?
>>
>> I found an entry in Larry Osterman's blog where he states that
>> "timeGetTime() reads a field called the "interrupt time", which is
>> updated periodically by the kernel". While this is not quite
>> definitive documentation, it does strongly suggest that the two are
>> equivalent.

>
> Disassembly reveals the answer. timeGetTime() returns the qword at
> 0x7FFE0008. KeQueryInterruptTime() returns the qword at 0xFFDF0008.
>
> Both addresses point to the same physical address.


Thank you, Tim, for taking the time to look into that. That's just what
I need.
 
Reply With Quote
 
 
 
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
8.5 versus 2008 versus 9 mc Windows Live Messenger 3 02-11-2008 03:42 AM
KeQueryInterruptTime() issue JRHeisey@aol.com Windows Vista Drivers 2 12-23-2007 05:31 AM
KeQueryInterruptTime or KeQueryPerformanceCounter GrahamH Windows Vista Drivers 6 09-16-2005 05:45 AM
KeQueryInterruptTime doesn't seem to work properly! Steve Windows Vista Drivers 1 02-08-2004 03:57 AM
Is KeQueryTimeIncrement or KeQueryInterruptTime can use in ISR rountine? Elliott Windows Vista Drivers 0 10-03-2003 09:26 AM