5 ms·
2038 Older computers are at risk of experiencing major software malfunctions The Year 2038 problem (also known as "Y2K38" by analogy to the Y2K Millennium bug
by candl 14y ago
2038
Older computers are at risk of experiencing major software malfunctions
The Year 2038 problem (also known as "Y2K38" by analogy to the Y2K Millennium bug) gains considerable public and media attention this year. It affects programs written in the C programming language. These were relatively immune to the earlier Y2K problem, but suffer instead from the Year 2038 problem. They use a library of routines called the standard time library. This takes a stored, 32-bit integer and interprets the current value as the number of seconds which have passed since 00:00:00 UTC on Thursday, 1st January 1970.
Because of the limited number of possible values that can be derived from this 32-bit integer, the farthest time that can be represented in this way is 03:14:07 UTC on Tuesday, 19th January 2038. Any times beyond this point will "wrap around" and be stored internally as a negative number, which these systems interpret as a date from 1901, rather than 2038. This is called integer overflow.
For older computers that still use this system, major problems begin to arise with file systems and databases, due to erroneous calculations. Fortunately, most systems have been upgraded by now, and little overall damage is done.
- swalsh 14y agoI thought that "bug" was patched by making a 64 bit integer included by default? Wouldn't they just have to recompile the program with the new library sometime during the next 26 years?
- raldi 14y agoWhat happens if you have a file format, or network protocol, that stores timestamps in a 32-bit field?
- keeperofdakeys 14y agoIt's not systems that can be updated that are the problem, it's embedder electronics. Desktops have no where near enough life span to be a problem, most servers will be updated before then due to advances in electronics. Embedded electronics can usually only be updated by replacing the entire machine and are written to be as simple, so many systems could be vulnerable to this bug. When you think of things like cars and and even microwaves, this starts to become rather probable.