Short bio: Computer Scientist, FOSS supporter (read more)
Tux Machines (TM)-specific
After the Millennium bug for which several billions of dollars were committed for research and updations in computer systems the world over, there is yet another bug on the horizon. It is the Year 2038 bug that is slated to hit computer users in that year.
To be precise, on Tuesday, January 19 03:14:07 2038, machines prone to this bug will alter calendars to go back to Friday, December 13 20:45:52 1901.
Computer programmers predict that this can result in incorrect and wildly inaccurate dates being reported by the operating system and applications. It is likely to cause serious problems on many platforms, especially Unix and Unix-like and Linux platforms, because these systems will "run out of time". They are reluctant to predict the extent of the damage.
What is special about this date? It is explained that Unix and similar operating systems do not calculate time based on the Gregorian calendar. Instead, they are known to simply count time in seconds from their arbitrary "birthday", that is, GMT 00:00:00, Thursday, January 1, 1970. The accepted practice among software programmers is to use a 32-bit variable for this number (32-bit signed time_t). The largest possible value for the end integer in this calculation is 2**31-1 = 2,147,483,647. So, 2,147,483,647 seconds after Unix's birthday falls on Tuesday, January 19, 2038. And one second later, theoretically Unix systems will revert to their birth date (like an odometer switching back from 999999 to 000000).
Experts are of the opinion that Linux users will be the hardest hit, because of the wider acceptance of this OS for its security and cost features. They are feared to grind to a virtual halt or go into a loop. This Linux's own Y2K nightmare can be more damaging than the Y2K bug, because the latter basically involved applications while the 2038 bug affects the time-keeping function itself.
Linux gurus are apprehensive about the bug's impact on the embedded field, where software does not get replaced frequently. As such, major telecom gadgets and equipment will be greatly affected. However, one ray of hope is that the 32-bit processing can be replaced thus overcoming the impact of the bug -- definitely before 2038.
But, the optimism must end there. The bug can have severe impact on records created today with calculations going beyond 2038, like insurance policies. There could be error messages splashing on Unix and Linux screens then. And Linux is getting to be the popular operating system these days.
Experts say one and sure-short way to overcome the problem is to switch over to 64-bit or longer time_t data storage. Some of the existing 32-bit codes can be changed and the programs recompiled. However, all these are not very easy tasks.