[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] current-posix-second is a disastrous mistake

   Date: Fri, 17 Dec 2010 13:53:59 +0200
   From: Vitaly Magerya <vmagerya@x>

   On 2010-12-17 05:40, Taylor R Campbell wrote:
   > ntptimeval.time.tv_sec + ntptimeval.tai - 10 + 63072000

   This timer isn't monotonic. If the user adjusts his clock (via ntpd or
   manually), this timer will jump as well (as opposed to CLOCK_MONOTONIC,
   which will not).

Of course.  What I said is not that it will be monotonic but that it
will behave well, meaning that it will tick consistently as long as
nobody requests that it jump, the hardware works, &c.  An operator can
set the clock, just as much as an operator can interrupt a program in
gdb and mess with bits in the program's memory.  The hardware can
fail; this is OK as long as failures happen at randomly chosen times.

A POSIX clock will not behave well, although you may not notice for
years at a time: with no intervention by the operator, ntpd, &c.,
(except to inform it of a pending leap second), every POSIX clock on
the planet rewinds simultaneously after a leap second, by design.

Scheme-reports mailing list