Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Community > MacNN Lounge > Y2K bug to hit in 2038

Y2K bug to hit in 2038
Thread Tools
angelmb
Addicted to MacNN
Join Date: Oct 2001
Location: Automatic
Status: Offline
Dec 12, 2005, 10:33 AM
 
Another 'in the near future your computer'll f*** itself' read… Article says if you have a 64 bit computer you are fine… does this apply to Macintoshes also ?

Hyderabad, Dec. 11: Computer experts say the wired world will turn upside down in January 2038, a date that seems far away but is already being accessed by computers to log in land leases and commercial agreements. The problem is akin to that of Y2K, only this time it is for real, warn experts. Experts have set the disaster time for computers at 03:14:07 GMT, January 19, 2038, a Tuesday. At that moment, many computers will “run out of time.” The next second, they will begin showing the time as 8:45:52 PM GMT, December 13, 1901.

If you are willing to take a risk and crash your computer, you could try the following exercise: change your computer system date to January 19, 2038, and time to 03:14:07 or beyond, and send a message on Yahoo Messenger. The messenger crashes. Chances are that if you are using Internet Explorer, it could get corrupted. All network-based applications could stop functioning.

The 2038 problem affects programs that use the Posix time representation, which represents time as the number of seconds since January 1, 1970. This representation is standard in Unix-like operating systems and also affects software written for most operating systems because of the broad deployment of C.

“In case you think we can sit on this issue for another three decades before addressing it, consider that reports of temporal echoes of the 2038 problem are already starting to appear in future date calculations for mortgages and vital statistics,” said M.H. Noble, managing director of Zoom Technologies (India) Ltd. What actually is the 2038 problem and how does it strike? Be prepared for a little lesson in programming.

Time_t is a data type used by C and C++ programs to represent time. Time_t is a count of the number of seconds since 1200 GMT on January 1, 1970. Time_t 0 would be midnight of January 1, 1970, time_t value of 1 would be 12:00:01 am of January 1, 1970. By the time the world moves to 2038, the time_t value will be over 2,140,000,000.

And therein lies the problem. A modern 32-bit computer stores a “signed integer” data type, such as time_t, in 32 bits. The first of these bits is used for the positive/negative sign of the integer, while the remaining 31 bits are used to store the number itself. The highest number that 32-bit computers can store in C and C++ based programs is 2,147,483,647. In time_t terms, it translates to 3:14:07 GMT, January 19, 2038. At that moment, time_t in a 32-bit C or C++ program will reach its upper limit. Or the computer will run out of time. One second later, on January 19, 2038, at 3:14:08 GMT, disaster strikes, explains Murali Krishna of Hutch. Every time the calculation goes haywire.

The next second is represented as minus-2,147,483,648, and the computer does not understand this. Thrown in a tizzy, it “thinks” that the time is 8:45:52 PM GMT, December 13, 1901. So, according to the soothsayers, January 19, 2038, will turn into December 13, 1901. Every date calculation will go haywire. And it gets worse. Most of the support functions that use the time_t data type cannot handle negative time_t values at all. They simply fail and return an error code.

But some experts say there is nothing to worry about. Says senior mathematician B. Moinuddin: “The problem is only with 32-bit computers. Anyhow 64-bit computers are going to be the norm in just a few years, let alone 34 years. We need not go into the panic mode. There is time to resolve this issue in a calm, cool and collected manner. Y2K was definitely blown way out of proportion. This too is going to be that way.”
     
mduell
Posting Junkie
Join Date: Oct 2005
Location: Houston, TX
Status: Offline
Dec 12, 2005, 11:40 AM
 
It doesn't matter so much if your CPU is 32 or 64-bit, but rather if your OS uses a 32 or 64-bit integer for time_t.
Of course even with a 64-bit time_t we'll have the year 292277026596 problem.
     
ort888
Addicted to MacNN
Join Date: Feb 2001
Location: Your Anus
Status: Offline
Dec 12, 2005, 11:44 AM
 
Only this time, it's for real!

This is 30 years in the future. I seriously doubt we will still be using any non 64 bit computers by then.

How many computes from 1975 are still in use today?

My sig is 1 pixel too big.
     
turtle777
Clinically Insane
Join Date: Jun 2001
Location: planning a comeback !
Status: Offline
Dec 12, 2005, 11:46 AM
 


-t
     
   
 
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Top
Privacy Policy
All times are GMT -4. The time now is 03:45 PM.
All contents of these forums © 1995-2017 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.8 © 2000-2017, Jelsoft Enterprises Ltd.,