[LEAPSECS] presentations from AAS Future of Time sessions

Brooks Harris brooks at edlmax.com
Sun Jan 12 03:52:06 EST 2014


On 2014-01-11 11:47 PM, Poul-Henning Kamp wrote:

> In message <52D20BEB.60709 at edlmax.com>, Brooks Harris writes:

>

>

>> Yes, in my opinion its unfortunate they chose to use the term "UTC" in

>> that context.

> They chose UTC because they meant UTC.

>

> I have this directly from multiple persons who were involved back

> then, including Dennis Ritchie who gave me the full sordid details

> about the early UNIX' requirement of weekly recompiles to update

> the epoch of the timekeeping.

>

> The reason why they didn't cater to leap-seconds ?

>

> They hadn't heard about them at the time.

>

> And even if they had, they likely wouldn't have bothered, since the

> PDP-11's kept time based on the mains grid frequency and Ken Thompsons

> wrist-watch.

>

> The trouble starts when Bell Labs starts to commercialize UNIX,

> polishes the manual pages and goldplates them as "System V Interface

> Definition" in 1985, without checking if there are any implicit

> references to Ken's watch that needed to be resolved.

>

> Interestingly, leapseconds appear in network time protocols for the

> first time in 1985, where previous prototypes does not have support

> for them, despite the leapseconds in '81, '82 and '83.

>

> Later the manual pages also became X/Open, which were fostered by

> a group of UNIX vendors who wanted BSD networking rather than

> STREAMS, because the former worked while the latter really didn't,

> and they didn't notice the bit about leap-seconds either.

>

> Eventually it all became dumbed down to POSIX so that Windows NT,

> VMS and MVS could also qualify, which is were all the crappy APIs

> (timespec, clock_t etc.) comes from as far as I remember.

>

> ...and then the dot-com boom happened, multiplying the cadre of programmers

> by a factor 1000 and reducing the average knowledge and skill level by

> the same factor, at the same time as leap-seconds took a break.

>

> The rest is (also) history.

>

> But time_t has always been UTC, because it was meant to be UTC.

>


Oh, I see what you're saying. Of course - UTC in the historical non-Leap
Second period existed, and they intended time_t to reflect it. The
trouble now is *modern* UTC has Leap Seconds and these were never adopted.

We don't have terms for "UTC before 1972-01-01T00:00:00Z" and "UTC after
1972-01-01T00:00:00Z".

-Brooks



More information about the LEAPSECS mailing list