Talk:Unix epoch
billenium
[edit]Please note that the number "billion" is defined differently in different countries. It is not correct to say that "one thousand million" equals "one billion" in all countries; in some countries, "one billion" equals "one million million." The terms are not interchangeable. Jdavidb 05:35, 27 Feb 2004 (UTC)
On the other hand, "one thousand million" has NO meaning in the United States. RickK 05:41, 27 Feb 2004 (UTC)
Uh, I live in the U.S., and to me it means one thousand millions, or one thousand times one million. Jdavidb 05:43, 27 Feb 2004 (UTC)
Here's a google search showing numerous uses of the phrase "thousand million" and illustrating how the American and European definitions differ.
Just one week to the 1 giga-second celebration on Sat Jan 10 13:37:04 UTC 2004
Would it be appropriate to comment that some see the Unix billennium as coming at 230 seconds after epoch, instead of 109 seconds? I know I celebrated my billennium that day (I'm only 51300 seconds (14.25 h) older than the epoch myself), but I'm planning on doing the binary "billennium" next year too (January 10, if you want to add it to the article), and anything worth doing as a computer geek, is worth doing in binary, right? Besides, it's the halfway point to the Dreaded Y2k38 Bug. ;) -- John Owens 21:55 17 Jun 2003 (UTC)
"sometime shortly after 03:00 on January 19 depending on how many leap seconds there are between 1970 and then"
That's not true. It will be at precisely 03:14:07 UTC, regardless of the number of leap seconds. The reason for this is that unix times are measure in non-leap seconds since the epoch. So when a leap second occurs, everyone's clocks become one second out until the next time they are synchronized to a time server that knows about the leap second. Hence you don't have to worry about leap seconds when converting from unix times to calendar times (something computers do a lot), but if you wanted to know the exact number of seconds including leap seconds which passed between date X and date Y (something computers very rarely bother with), then you'd need to know about leap seconds.
Since this effectively an accuracy dispute, I'll leave a couple of days for rebuttal before jumping on in. -- Onebyone 15:44, 28 Sep 2003 (UTC)
- I disagree. Unix time is effectively out of sync with UTC precisely because of leap seconds. So the actual time of the rollover with respect to the UTC is unknown. On the other hand, you can calculate the precise date and time in the Unix epoch when the rollover will occur. And that will be 03:14:07 GMT (Unix epoch).
- As I say then, this is an accuracy dispute. Unix time always keeps step with UTC. As proof of this, go to a unix machine and type "date" to get the current unix time, and then "date -u" to get current UTC. Observe that once your time zone is accounted for, they match. Whenever a leap second occurs in UTC, a leap second also occurs in unix time, and unix time clocks (including internet time servers) must be adjusted to account for it. Onebyone 01:05, 4 Jan 2004 (UTC)
- An additional second (23:59:60) is inserted into UTC time when leap seconds occur (check that page). I believe this does not happen in Unix time—I'm pretty sure they count 23:59:59 twice instead. Unix clocks are resynchronized, though, and will show current UTC time (if properly interfaced to a time server, GPS clock, or whatever). UTC and Unix time will both read 03:14:07 when the last second is counted, although 2147483647 seconds from 00:00:00 01-01-1970 would be somewhere closer to 03:13:25 UTC time. Conversely, in 2038, the Unix system will be off in calculating the 1970 epoch—it will be closer to 00:00:45 01-01-1970 according to a UTC clock. Well.. I think.. It's not a problem in counting current time, but rather a problem determining how far away another date/time actually is. —Mulad 01:43, 4 Jan 2004 (UTC)
- In all statements made on this topic it is important to distinguish between elapsed SI seconds and mean solar seconds. The practical result of ignoring leap seconds is that POSIX time counts mean solar seconds, not SI seconds. The length of mean solar seconds is always varying. However, the length of a second of TAI (and UTC) changed in 1977, and the length of UTC seconds before 1972 was not equal to TAI seconds. Be careful about getting too dogmatic, for the history of precision timekeeping is not simple. See the last link on the page of time scales 2004-01-13T17:00. Also, as far as I can tell, the BSD family of Unixes has chosen an alternate definition of the Unix epoch which is incompatible with the POSIX standard. See http://www.ucolick.org/~sla/leapsecs/onlinebib.html#POSIX . So there is probably a need to distinguish between the POSIX epoch and the BSD Unix epoch 2004-01-21T19:11. Recent Unix kernels do not count 23:59:59 twice, for that would allow for leap second arbitrage in financial markets (see http://www.mail-archive.com/leapsecs@rom.usno.navy.mil/msg00332.html for details). At least in part due to work by Dr Dave Mills, creator of NTP, recent Unix kernels guarantee monotonic increase of the system clock. 2004-02-05T07:54. Furthermore, if the ITU follows through with the alternative constructed at the Torino meeting of SRG 7A, then the whole notion of the value of UTC at the end of the signed 32-bit POSIX epoch is moot, for UTC will have ceased to exist in the year 2022. 2004-02-05T08:48 User:63.249.88.80 (who happens to be Steve Allen)
- Dave Mills is my boss and advisor, and probably the world authority to ask this question to. If you guys want, I can ask him about it next time I talk to him. →Raul654 08:02, Feb 5, 2004 (UTC)
- Addendum - I already had to email him with regard to another matter, so I attached the above question. I'll post his reply if/when I get it. →Raul654 08:51, Feb 5, 2004 (UTC)
Ok, I talked with Mills this morning. He agreed that the paragraph in quesion is bunk. As he explained it, NTP has no "memory" - once a leap second elapses, it's gone. Posix does it very differently, using atomic time instead, but that is beside the point. →Raul654 09:40, Feb 11, 2004 (UTC)