[ntp:questions] Re: Windows timekeeping

David J Taylor david-taylor at blueyonder.co.not-this-bit.nor-this-part.uk
Sat Aug 5 17:31:54 UTC 2006


Bryan Henderson wrote:
>> Windows assumes that the RTC on the motherboard is set to local
>> time, as it would typically be set from someone's watch when it is
>> first set up by an individual user (it may be set to Chinese or
>> Taiwanese time when first delivered).
>
> I don't follow this part.  The user uses Windows to do this setting,
> right?  So Windows could choose any timezone for the hardware clock,
> and UTC would be a natural choice.  Windows obviously asks the new
> user what time zone he's in, and therefore when the user says what
> time his wristwatch says, Windows knows what UTC that corresponds to.

No, the user sets the initial time when they first build the computer and 
go into the BIOS to set the configuration.  Way before any OS is even 
installed.  Perhaps these days I should have said "system builder" or 
something like that.

> But I do believe that Windows systems still use local time, because I
> hear about people who run Linux and Windows on the same hardware and
> therefore Linux's 'hwclock' has to understand that the hardware clock
> is in some local time.

Windows uses UTC internally and displays whatever the user has requested. 
Other OSes may differ, although I believe that Unix does something 
similar.

What is different is the OS's assumption about the hardware clock - 
Windows assumes it's local time - the time on the users' wrist watch - 
whereas I believe that Linux assumes differently.

> Maybe it's just a backward compatibility thing; at one time you might
> have wanted to switch between old and new Windows on the same
> hardware.  In fact, it's always been 'hwclock' default (though
> discouraged and usually overridden) to use local time, for the same
> reason.

The issue arises, as I understand it, when booting both Windows and Linux 
on the same PC.  A related issue can also arise if you have two versions 
of Windows on the same PC, and you boot after an hour change (due to the 
standard/daylight saving transition).  When the second OS boots, I may 
also change the hardware clock by one hour (a second time), because it 
also thinks that the clock is in the wrong state.  Keeping the hardware 
clock in UTC would avoid this problem, as the OS would never need to 
adjust it.  Of course, it would also rely on the user setting the clock in 
UTC correctly in the first place.....

David 





More information about the questions mailing list