UMBC CMSC 201 Spring '05 CSEE | 201 | 201 S'05 | lectures | news | resources |discussion| help

A Caution about Unix Time

In the beginning

  • Unix measures time in the number of seconds since January 1, 1970
  • This was an arbitrary date picked during the development of Unix, which was during the late 60's and early 70's.
  • the Unix time() function returns an int, which on most machines is a 32 bit value
  • ... with the first (leftmost) bit=0 for positive numbers and 1 for negative numbers

Things to come

  • At GMT 03:14:07 on Tuesday, January 19, 2038 it will have been 2,147,483,647 seconds since Unix began counting.
  • this is ... 2**31-1
  • and the Unix time value will roll over
    • from 01111111111111111111111111111111
    • to     10000000000000000000000000000000
    • to     10000000000000000000000000000001
  • Which equals -1
  • What will happend as we move through this singularity?
  • Some say this will be
    • 20:45:52, Friday, December 13, 1901, or maybe
    • December 32, 1969

What lies beyond

  • Should you fly on 1/19/2038?
  • It's not recommended.
  • Stay at home and guard it from the roving bands of starving retirees seeking food that began to appear after the Social Security checks stopped coming in 2035.


CSEE | 201 | 201 S'05 | lectures | news | resources | help |

Thursday, 17-Feb-2005 09:06:50 EST