Year 2038 Problem

On January 19, 2038,  UNIX-based programs and UNIX-like operating systems will run out of time. To be more precise, at 3:14:07 GMT, UNIX will be exactly 1 billion seconds old. Many see this as a milestone, but from a technical point of view, this can mean disaster for computer programs and systems around the world.

The Problem    

Just as Y2K problems arise from programs not allocating enough digits to the year, Y2K38 problems arise from programs not allocating enough bits to internal time.

Unix internal time is commonly stored in a data structure using a long int containing the number of seconds since 1970. This time is used in all time-related processes such as scheduling, file timestamps, etc. In a 32-bit machine, this value is sufficient to store time up to 18-jan-2038. After this date, 32-bit clocks will overflow and return erroneous values such as 32-dec-1969 or 13-dec-1901. Read More…

Leave a Reply