>>> 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.
So you're talking about the person at the factory, not the person who gets the computer from the factory, right. It's been ages since I've seen a computer fresh from the factory, but I assume it comes with Windows already on it and the first thing the user sees when he turns it on is a "welcome to Windows, let's set up your computer" dialog. This dialog asks what time zone you're in and, because it knows that even if it was set at the factory, the hardware clock would have drifted a lot, it asks what time it is. The program then sets the hardware clock, making a choice as to what time zone offset to use with it. It chooses the user's local time zone. With this scenario, the reason for that choice obviously is not because the user is comfortable with local time -- the user never even sees those numbers. It is apparently a matter of backward compatibility. It's also my impression that the system builder at the factory doesn't go into a BIOS screen to set the hardware clock, but that guy probably isn't relevant if the scenario described above happens later. >I think the history is that MS-DOS was originally an OS for isolated, >non-portable, machines operated by unsophisticated users, so local time >was the easiest concept for the users to handle. Unix was developed >by academics, so they were prepared to deal with more abstract concepts >and consider the long term. I don't think there's any way to compare the two design choices because the hardware MS-DOS ran on was the only hardware that had a clock that communicated in HH:MM:SS form, so was the only hardware that made you make a choice as to which HH:MM:SS standard you wanted. If anyone knows of a computer architecture besides ISA and stuff designed to be compatible with it that has a HH:MM:SS hardware clock, speak up, but all the other clocks I can think of maintain a single counter, and it's up to the OS to derive from it UT HH:MM:SS or local HH:MM:SS for use by humans. The hardware used in ISA wasn't even designed for a general purpose computer. The MC146818A chip is for use in _really_ tiny special purpose machines that must offload all their time computation. It's somewhat of a mystery that ISA designers chose to use that chip, but the fact that MS-DOS was already keeping time in similar fashion internally made is less strange than it would be otherwise. Maybe it was just really inexpensive. As for the choice to use local HH:MM:SS instead of UT HH:MM:SS, it seems to me that even keeping track of a time zone and computing DST was beyond the sophistication of DOS of the day, so maybe using UT just seemed pointlessly complex. After all, even today a kitchen appliance with a clock in it does not track UTC inside. -- Bryan Henderson Phone 408-621-2000 San Jose, California _______________________________________________ questions mailing list questions@lists.ntp.isc.org https://lists.ntp.isc.org/mailman/listinfo/questions