What is the “2038 Effect”, what devices does it affect and what danger could it pose?

On January 19, 2038, when the clock strikes fourteen minutes and seven seconds past five in the morning (03:14:07 UTC), a computer bug will cause most computers, programs, servers or any type of device that uses a 32-bit system and has not been patched to fail on a global scale, thinking that it is 1901 again.

Do you remember the Y2K bug that caused so much concern at the end of the last century? Well, “Y2K38” is something similar. It may not end up affecting us, there is plenty of time to patch or replace 32-bit systems, but today we are going to tell you why this problem exists so that you can understand what has been and will continue to be talked about when referring to Y2K38.

We started hearing about the year 2038 problem frequently in December 2014, at the height of Gangman Style fever. PSY’s video clip reached 2,147,483,647 views on December 3 of that year, and after surpassing that number YouTube stopped being able to count beyond that. Google had to patch YouTube, and the rest of the world realized we had a problem.

What exactly is the year 2038 problem

The problem of the year 2038 is due to the maximum bit capacity of 32-bit systems. They store memory and execute their processes using 32 binary digits, which can be represented by a 1 or a 0, allowing a total of 4,294,967,296 possible combinations.

But keep in mind that these combinations can be positive or negative, so in reality 32-bit systems “only” have 2,147,483,647 positive values greater than zero and another 2,147,483,648 negative values. One more negative value since the zero is in the positives’ slot.

What is the "2038 Effect", what devices does it affect and what danger could it pose.

One of the systems that these processors use to count time is POSIX, which calculates the seconds elapsed since January 1, 1970 at 00:00:00 UTC. This means that from January 1, 1970, 32-bit computers are only able to count the dates from 20:45:52 UTC on December 13, 1901 to 03:14:07 UTC on January 19, 2038.

Therefore, one second after 03:14:07 UTC on January 19, 2038, 32-bit systems will no longer be able to count, and will confuse the date with December 13, 1901, which is the 1970 reference date minus the negative 2,147,483,647 seconds.

The problem lies in the type of variable used to store a temporary information. If an “int” is used the failure will appear, which is the variable used in almost all 32-bit systems. However, if an “unsigned int” is used, the negative sign will be removed and there will be a few more years of margin.

The bug affects mostly the Unix operating system, which is in the guts of other systems such as GNU/Linux, Android and iOS. So this ranges from almost all cell phones to a large part of Internet servers. And the most disturbing thing is that we don’t know how these systems that are affected will act as they are no longer able to count time.

Some might simply reset their dates back to 1901, enough to create a bit of chaos depending on where it happens. But it’s also possible that system failures could be triggered, or even that some devices could shut down and not turn back on. In any case you can rest assured that this is not something that will really affect us.

Is Y2K38 going to be a problem? NO!

Year 2038 problem.
Year 2038 problem.

Although on paper everything looks like an almost biblical catastrophe, there is really not much to worry about. Keep in mind, for example, that 32-bit processors have been abandoned for years in favor of 64-bit processors, which, having a higher bit capacity, would still take a few centuries to have this problem.

For example, Microsoft has been offering 64-bit versions of its operating system since Windows XP Professional in 2005, Apple’s macOS system has been 64-bit exclusive since Mac OS X 10.7 “Lion” in 2011, and the first Android mobiles with 64-bit started arriving in 2014.

Therefore, if 32-bit are becoming obsolete, it is logical to think that by 2038 even the 64-bit ones that are gradually being transitioned to will also have been abandoned for more advanced ones. After all, technology is advancing by leaps and bounds, so it is unlikely that in 20 years’ time we will even remember 32-bit.

And even if there are still some network systems or secondary devices still stuck in 32-bit, manufacturers have plenty of time to patch them with software updates. It’s going to be very difficult for this 2038 problem to wreak any significant havoc.


Leave a Reply