[time-nuts] Re: UTC - A Cautionary Tale

Robert Lutwak Lutwak at Alum.mit.edu
Sat Jul 16 18:36:39 EDT 2005

You've missed all the GUI code to let the user pick out his time zone and 
the table of all of them, including the screwy half-hour ones and those that 
don't do daylight savings.  You've also missed the possibility that leap 
seconds occur on other dates.  There are some countries that do them at 
other times as well, even when they're assigned to midnight Dec. 31, in 
order to avoid disrupting midday commerce.  This is usually done on an ad 
hoc basis, i.e. "on this occasion, by royal decree..." and so customers 
would like the full GUI for them to specify not only the pre-setting of the 
leap-second, but also the time and date of it.  With all of this, it's easy 
for the leap-second/time-zone/daylight savings code to grow to be larger 
than than the code that runs the clock itself.

Most importantly, as I said before is the need to TEST and VERIFY all 
possible combinations.  If you miss one, that's the customer who'll complain 
and you'll have to update the firmware in everyone's clocks and TEST and 
VERIFY it all again.

As for concern that people in 10,000 years won't conform to having the sun 
come up 15 minutes earlier, I'd say y'all are underestimating the power of 
adaptive evolution.


Robert Lutwak, Senior Scientist
Symmetricom - Technology Realization Center
34 Tozer Rd.
Beverly, MA 01915
(978) 232-1461   Voice           RLutwak at Symmetricom.com   (Business)
(978) 927-4099   FAX             Lutwak at Alum.MIT.edu  (Personal)
(339) 927-7896   Mobile
----- Original Message ----- 
From: "Bill Hawkins" <bill at iaxs.net>
To: "Discussion of precise time and frequency measurement" 
<time-nuts at febo.com>
Sent: Saturday, July 16, 2005 6:12 PM
Subject: RE: [time-nuts] Re: UTC - A Cautionary Tale

> Um, would you care to point out the more serious bugs?
> Bill
> -----Original Message-----
> From: phk at phk.freebsd.dk [mailto:phk at phk.freebsd.dk]
> Sent: Saturday, July 16, 2005 3:47 PM
> To: bill at iaxs.net; Discussion of precise time and frequency measurement
> Subject: Re: [time-nuts] Re: UTC - A Cautionary Tale
> In message <001c01c58a46$527573a0$0500a8c0 at darius.domain.actdsltmp>, "Bill
> Hawk
> ins" writes:
>>Garbage is in the eye of the beholder.
> Indeed.
> That your "I'm gonna show those morons!!!" example contains serious
> bugs in the leap second handling makes this one of my most treasured
> emails in this entire debate.
> Welcome to category 3) Bill, now please don't waste more time.
> Poul-Henning
>>/* Main Time Routine */
>>/* User must set a Leap Second switch when notified of same. */
>>/* Use a signed number for the switch if you think it will  */
>>/* jump ahead one second. */
>>/* Handle one second interrupt */
>>UTC += 1;
>>/* Handle Local Time from user-entered parameters, just like MS does */
>>Local Time = UTC + Local Time Offset;
>>/* Handle leap second in UTC and local. Clock doesn't do 60 */
>>If Leap Second switch is set {
>>   If (UTC is 30 Jun 23:59:59 || UTC is 31 Dec 23:59:59) {
>>      Subtract leap second from UTC;
>>      Subtract Leap second from Local Time;
>>      Turn off leap second switch;
>>   }
>>/* Handle time shifts from user-entered parameters */
>>If Local Time matches Spring Ahead {
>>   Local Time += Spring Ahead Increment;
>>   Add one year to Spring Ahead;
>>If Local Time matches Fall Back {
>>   Local Time -= Spring Ahead Increment;
>>   Add one year to Fall Back;
>>   }
>>/* End main time routine */
> --
> Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
> phk at FreeBSD.ORG         | TCP/IP since RFC 956
> FreeBSD committer       | BSD since 4.3-tahoe
> Never attribute to malice what can adequately be explained by 
> incompetence.
> _______________________________________________
> time-nuts mailing list
> time-nuts at febo.com
> https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts 

More information about the time-nuts mailing list