System.Time.Clock Design Issues

Bayley, Alistair Alistair_Bayley at
Thu Feb 3 10:14:58 EST 2005

I'm a bit worried that I'm not keeping up with this, so I'd like to clarify
some points for my own benefit:

=== The current time ===

 - UTC/POSIX/CalenderTime are isomorphic, and represent some idealised
notion of time where leap seconds don't exist i.e. a day always has duration

 - Most (all?) system clocks return UTC. They may slow down around leap
seconds to support this - is this behaviour only seen on systems with NTP?

 - It's not possible to simply get the number of actual ticks since some
epoch; the OS time function may slow down for leap seconds and we can't
avoid this.

 - This means TAI time can only be calculated accurately when we have the
full leap second table available.

=== Durations ===

 - Duration calculations are feasible for UTC at any point, as they're

 - Duration calculations are accurate for TAI only where we have the full
leap second table, again.

 - Timing an event using the system timer where the event duration
encompases a leap second will be inaccurate.

 - The duration between times A and B, where A->B encompass a leap second,
will be different between UTC and TAI: UTC will not count the leap second,
while TAI will include the leap second.

 - The duration between A and B, where both A & B are in the future (now + 6
months), will be the same in TAI and UTC because with TAI we won't know when
the leap seconds are, so we assume and idealised calendar.


Confidentiality Note: The information contained in this   message, and any
attachments, may contain confidential   and/or privileged material. It is
intended solely for the   person(s) or entity to which it is addressed. Any
review,   retransmission, dissemination, or taking of any action in
reliance upon this information by persons or entities other   than the
intended recipient(s) is prohibited. If you received  this in error, please
contact the sender and delete the   material from any computer.

More information about the Libraries mailing list