The Year 2000 problem, also known as the Millenium Bug or the Y2K problem, was a computer bug related to formatting and storage of calendar date. This problem started as the storage in early computers was expensive. So, to reduce the storage space, the programmers used the six-digit MMDDYY date format. As the programs were able to add 19 to year’s YY, it saved money but reducing the size of files and databases. However, such programs found it hard to distinguish between the year 2000, 1900, and 19100.
To tackle this issue, governments set up special committees to make sure that critical infrastructure had fixed this problem. Now, analogous to the same, the Year 2038 problem is another issue for computing world.
The Year 2038 problem is also called Unix Millenium Bug or Y2K38 bug. This bug could cause problems in the data storage situations in which time values are stored or calculated as a signed 32-bit integer.
The latest time that can be represented in Unix’s signed 32-bit int time format is 03:14:07 UTC on Jan. 19, 2038, which is 2,147,483,647 seconds after Jan. 1, 1970. Beyond that time, due to integer overflow, the time values will be stored as a negative number and the systems will read the date as Dec. 13, 1901 rather than Jan. 19, 2038.
In simple language, Unix machines are eventually going to run out of the bits to tick off seconds. So, on this day, the C programs that use the standard time library will start to have problems with dates.
Submitted by: Arnfried Walbrecht