• Best Hacking Forum
  • Best Blog Online

  • Sponsored Links

    *Year 2038..Again the replica of Y2K*

    Note: This is just for FYI only, Please Don't try

    this. This is true and if you do this then your

    network based applications will not work.

    The Year 2038 Problem

    Triaging steps...

    1. login to yahoo messenger

    2. send instant message to anyone - fine its


    3. now, change your system date to 19-Jan-2038,

    03:14:07 AM or above

    4. Confirm weather your date is changed

    5. again send instant message to anyone...

    Your YM crashes....


    NOW * * *


    What is it?*

    Starting at GMT 03:14:07, Tuesday, January 19, 2038,

    It is expected to see lots of systems around the world

    breaking magnificently: satellites falling out of

    orbit, massive power outages (like the 2003 North

    American black out), hospital life support system

    failures, phone system interruptions, banking errors,

    etc. One second after this critical second, many of

    these systems will have wildly inaccurate date

    settings, producing all kinds of unpredictable

    consequences. In short, many of the dire predictions

    for the year 2000 are much more likely to actually

    occur in the year 2038! Consider the year 2000 just a

    dry run. In case you think we can sit on this issue

    for another 30 years 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!

    In the first month of the year 2038 C.E. many

    computers will encounter a date-related bug in their

    operating systems and/or in the applications they run.

    This can result in incorrect and wildly inaccurate

    dates being reported by the operating system and/or

    applications. The effect of this bug is hard to

    predict, because many applications are not prepared

    for the resulting "skip" in reported time anywhere

    from 1901 to a "broken record" repeat of the reported

    time at the second the bug occurs. Also, may make

    some small adjustment to the actual time the bug

    expresses itself. This bug to cause serious problems

    on many platforms, especially Unix and Unix-like

    platforms, because these systems will "run out of


    What causes it?

    Time_t is a data type used by C and C++ programs to

    represent dates and times internally. (Windows

    programmers out there might also recognize it as the

    basis for the CTime and CTimeSpan classes in MFC.)

    time_t is actually just an integer, a whole number,

    that counts the number of seconds since January 1,

    1970 at 12:00 AM Greenwich Mean Time. A time_t value

    of 0 would be 12:00:00 AM (exactly midnight)

    1-Jan-1970, a time_t value of 1 would be 12:00:01 AM

    (one second after midnig ht) 1-Jan-1970, etc..

    some example times and their exact time_t


    Date & time time_t representation

    1-Jan-1970, 12:00:00 AM GMT 0

    1-Jan-1970, 12:01:00 AM GMT 60

    1-Jan-1970, 01:00:00 AM GMT 3 600

    2-Jan-1970, 12:00:00 AM GMT 86 400

    1-Jan-1971, 12:00:00 AM GMT 31 536 000

    1-Jan-1972, 12:00:00 AM GMT 63 072 000

    1-Jan-2038, 12:00:00 AM GMT 2 145 916 800

    19-Jan-2038, 03:14:07 AM GMT 2 147 483 647

    By the year 2038, the time_t representation for the

    current time will be over 2 140 000 000. And that's

    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 these 31 data bits can store works

    out to exactly 2 147 483 647. A time_t value of this

    exact number, 2 147 483 647, represents Janu ary 19,

    2038, at 7 seconds past 3:14 AM Greenwich Mean Time.

    So, at 3:14:07 AM GMT on that fateful day, every

    time_t used in a 32-bit C or C++ program will reach

    its upper limit.

    One second later, on 19-January-2038 at 3:14:08 AM

    GMT, disaster strikes. When a signed integer reaches

    its maximum value and then gets incremented, it wraps

    around to its lowest possible negative value. This

    means a 32-bit signed integer, such as a time_t, set

    to its maximum value of 2 147 483 647 and then

    incremented by 1, will become -2 147 483 648. Note

    that "-" sign at the beginning of this large number. A

    time_t value of -2 147 483 648 would represent

    December 13, 1901 at 8:45:52 PM GMT.

    So, if all goes normally, 19-January-2038 will

    suddenly become 13-December-1901 in every time_t

    across the globe, and every date calculation based on

    this figure will go haywire. And it gets worse. Most

    of the support functions that use t he time_t data type

    cannot handle negative time_t values at all. They

    simply fail and return an error code.

    10 Responses to “Y2K retrns in 2038!!!!real c the preview with explanation..”

    1. # Anonymous Anonymous

      Lot of interesting stuff there on your blog...
      I'll definitely read it these days...
      got your blog from "siva19185" from the chip-india site..

      u can take a look at my blog too is u wish


      This site list all my blogs which created
      Anyways.. Continue the good work and MERRY CHRISTMAS  

    2. # Blogger prethi

      sure..thnks & keep visiting.....  

    3. # Anonymous James

      you said by changing the system date and time to certain thing...the ym crashes?
      Well dear i have just one thing to say. if changing the date on ur system and msgn thru ym and ym crashed its a bug!!!
      if your theory is real then if anyone changes dates or tiem the satellits should come crashin outa the orbit? and if everyone on planet changing date and time on their system then the whole planets comm systems would fail haha
      well your THEORY sorry but i must say this was DUMB!!!
      And one quetion if u changed the date and time and ym crashed.. then y dint the satelits and stuff come down to earth? lol.... so now u know? or i hope its clear :)  

    4. # Blogger prethi

      hey i dont know satellite technology....i said abt the eror in todays windows system...it wil crash ur firewall & all net based application 4 sure..test it if u want....i did & it happens!!!it is a treat unnoticed by most computer users..  

    5. # Anonymous James

      Well yes prethi, preety, i do agree with that... thats surely a bug... if this was discovered by you why not report it to microsoft or such?
      and also...i agree if theres a buge obvious many wouldnt notice... many lay ppl...but others like us or you would...
      Now about satellite thats just another way of spreading rumor hehe ;) its ok thou...nice work...atleast someones got enof time to change dates and times and check for bugs ;) Best of luck
      by the way i must say, i love most of your articles and posts... its fun to go thru...  

    6. # Blogger Rajiv Narula

      Nice Site...

      You are right about what you said about 2038

      I have no idea how did James conclude that you implied in your blog that people can cause to satelites to fall off sky by changing time on their machines.

      And being aware of such issues doesnt mean you have too much time on your hands- just means that you are informmed

      And James- btw- on visiting your sitte- the browser back button starts acting funny.
      You might want to fix that in your spare time ;)  

    7. # Anonymous James

      Hey rajiv,
      check what preethi had written, thats what i replied to!!! she did mention about sattellites falling outa orbit and such! now u know why i came up with such a reply!
      And bout on visiting my site the back button of browser acting weird, thats a technique to keep people on my site and not letting them go back !! haha and if indeed u wanna go back.. u can click on the arrow next to back button and select the page individually!  

    8. # Anonymous Anonymous

      Children Children, It's not a BUG! 2038 is the next Y2K. Most software uses time in one way or another. Typically, the current time is requested from the operating system. The value returned on most computers with 32-bit CPUs is the number of seconds since Jan 1, 1970, and is returned in a 32-bit signed integer. In early 2038 (exactly 3:14:08 AM GMT on January 19,2038), the number of seconds since Jan 1, 1970 will exceed the largest positive value that can be held by a 32-bit signed integer. This could potentially cause problems with any non-Y2038-compliant systems/software that uses the current time.
      Next year, 2008, some programs that do 30 year interest calculations will begin to fail. I don't know if satellites will drop out of the sky; or even if by 2038 we'll even use satellites. But don't poo-poo the idea. It's true and there's a logical reason for it.


    9. # Anonymous Yousuf

      The internal time format inside most computers is a signed 32-bit number, that measures the number of seconds since a certain arbitrary date that someone chooses during the computer's original design phase. The largest number available is 2147483648 seconds, which works out to a bit over 68 years! On Unix & Linux computers, that arbitrary date was set to Jan 1, 1970; but on DOS and Windows computers, that date is Jan 1, 1980! So if you add 68 years to 1970, you come up with 2038. But with Windows PCs, you have to add 68 years to 1980, which works out to 2048. So not to worry, you have ten extra years to work things out on Windows! And by that time, 64-bit computers will be ubiquitous, so the time counter would be a signed 64-bit value rather than 32-bit. The maximum number of years in a 64-bit counter is 292,271,023,045 -- a bit over a a quarter trillion years!! The Sun will have long since burned out by then, and most of the universe will have receded away from our point of view.  

    10. # Anonymous Anonymous

      Using a 64 bit computer doesn't magically mean that all 32 bit integers become 64 bit. A 64 bit operating system can certainly use a 32 bit signed integer.

      Let's just hope that those working on the innards of those 64 bit operating systems decide to use 64 bit integers for time keeping!


    Post a Comment

    Contact Me

    Name: prethi
    Home: Banglore, Karnataka, India
    About Me: i wanna b a techie girly
    See my complete profile sivashankar2@thandora.com Page copy protected against web site content infringement by Copyscape

    Must Have Software

    Sponsored Links

    © 2006 Tech Noise--All About Technology