[ntp:questions] NTP client with ability to write Windows NT system time to hardware clock?

Brolin Empey brolin at brolin.be
Sat Dec 11 12:07:38 UTC 2010


I run Windows 7 Professional IA-32 with RealTimeIsUniversal=1 on 
brolin-V13, my Dell Vostro V13 laptop. This means brolin-V13’s hardware 
clock (RTC) runs in UTC, as it should, instead of the local time zone, 
as Microsoft still uses for the completely illogical default 
configuration.  RealTimeIsUniversal=1 is /finally/ fixed and fully 
working beginning in Windows Vista SP2 + Windows 7, but there is still a 
problem:  When RealTimeIsUniversal=0, which is also used when the 
RealTimeIsUniversal key does not exist, Windows 7 writes the Windows NT 
system time to the hardware clock during the shut down process.  When 
RealTimeIsUniversal=1, though, the Windows NT system time is never 
written to the hardware clock.  Consequently, I have to boot Ubuntu from 
a USB flash drive (brolin-V13 has no optical disc drive (ODD).), then 
use ntpdate-debian + hwclock to synchronise the Linux system clock with 
an NTP server on the Internet, then write the 
sufficiently-accurate-for-me Linux system time to the hardware clock so 
Windows 7 will set the Windows NT system clock from the accurate time in 
the hardware clock.  After some time (at least 1 week, not sure.), 
though, my hardware clock is approximately 2 minutes behind the correct 
time from an NTP server, but Windows 7 never writes the Windows NT 
system time to the hardware clock when RealTimeIsUniversal=1, so I have 
to use my Ubuntu USB flash drive again.  I know the proper solution is 
to get Microsoft to change Windows 7 so it can write the Windows NT 
system time to the hardware clock even when RealTimeIsUniversal=1, but 
that has not yet happened.  I have at least asked a Microsoft employee 
about it, though, so they know users (well, at least 1 user. :)) want 
the feature.  I can use w32time to force a synchronisation, but then I 
have to do that every time I boot Windows 7.  brolin-V13 travels with me 
between home and work, so it is not always running.  Maybe this causes 
the hardware clock to fall behind, but I do not think I can prevent 
having to shut down and boot brolin-V13 on a daily basis.  Since I do 
not know if Microsoft will ever enable Windows 7 to write the Windows NT 
system time to the hardware clock when RealTimeIsUniversal=1, the next 
best solution is probably to write a hwclock.exe application for Windows 
NT, but I am hoping someone has already implemented this functionality 
in an application such as an NTP client.  Googling “hwclock.exe” returns 
lots of noise because some malware uses this file name, but I have not 
found any real hwclock.exe equivalent to hwclock used on Linux.

So, is there an NTP client or any other application for Windows NT which 
can write the Windows NT system time to the hardware clock so I do not 
have to write hwclock.exe for Windows NT?

Thanks for reading,
Brolin




More information about the questions mailing list