No Mercy: The Year 2038 Problem



The date of Jan 1, 1970 is to UNIX developpers what year 0 is for Christians, just that in UNIX time you count in seconds, not in days as we do with calendars. UNIX time is commonly used in many modern operating systems.

Now here is a problem:

  • in UNIX time, two billion seconds after Jan 1, 1970 is Jan 19, 2038
  • in UNIX time, two billion seconds before Jan 1, 1970 is Dec 13, 1901

Many systems can hold time values only up to four billions, and then values start to "wrap around". This means that on Jan 19, 2038, they will think it is the year 1901!

The clock is now ticking for finding all these machines and to update their software, giving them bigger counters for storing UNIX time. For sure, some systems will be missed and some systems will be too old to be fixed. Real time will have no mercy ...