Thursday, March 24, 2011

The World is Going to End… Again

     In the year 2038 some computer software might fail. The Problem affects all software and systems that can store time as a signed 32-bit integer, and interpret this number of seconds since 00:00:00 UTC on thursday, 1 January, 1970.(It's Y2K for Unix) The further time that can be represented this way is 03:14:07 UTC on Tuesday, 19 January 2038. Times beyond this moment will "wrap around" and be stored internally as a negative number, which these systems will interpret as a date in 1901 rather than 2038. This will likely cause problems for users of these systems due to erroneous calculations.

     While most programs will only be affected in or around 2038, programes that work with future dates will begin to run into problems sooner. Because most 32-bit Unix-like systems store and manipulate time in this format, it is usually called Unix time, and so the year 2038 problem is often referred to as the Unix Millennium Bug. However, non-Unix operating systems aren't safe either. Any OS that stores and manipulates time this way will be just as vulnerable.

1 comment: