Search
Search titles only
By:
Search titles only
By:
Log in
Register
Search
Search titles only
By:
Search titles only
By:
Menu
Install the app
Install
Forums
New posts
All threads
Latest threads
New posts
Trending threads
Trending
Search forums
What's new
New posts
New ads
New profile posts
Latest activity
Free Ads
Latest reviews
Search ads
Members
Current visitors
New profile posts
Search profile posts
Contact us
Latest ads
Ad icon
Video Content Creator
pramukag
Updated:
Sunday at 6:10 AM
Ad icon
QA Engineer Intern
pramukag
Updated:
Sunday at 6:07 AM
Ad icon
Sell your Land, House on idamata.lk for FREE
sajith.xp.pk
Updated:
Thursday at 9:03 AM
Handmade Character Soft Toys
anil1961
Updated:
Jun 23, 2026
Bodim.lk out now !
Manoj Suranga Bandara
Updated:
Jun 21, 2026
Electronics
Vehicles
Property
Search
Reply to thread
Forums
Computers & Internet
News & Discussion
UNIX BUG in Year 2038!!
Get the App
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Message
<blockquote data-quote="Ranhiru" data-source="post: 1085274" data-attributes="member: 17748"><p><strong> <img src="http://www.y2k38.info/Year_2038_problem.gif" alt="" class="fr-fic fr-dii fr-draggable " style="" /></strong></p><p></p><p><strong>Y2K38</strong></p><p></p><p> </p><p> <ul> <li data-xf-list-type="ul"><a href="http://www.y2k38.info/#" target="_blank">On January 19, 2038, UNIX-based programs and UNIX-like operating systems will run out of time. To be more precise, at 3:14:07 GMT, UNIX will be exactly 1 billion seconds old. Many see this as a milestone, but from a technical point of view, this can mean disaster for computer programs and systems around the world.</a></li> </ul><p><strong>Explanation</strong></p><p> UNIX keeps track of time in a 4-byte integer that represents the number of seconds after January 1, 1970 12:00:00. </p><p> For example, a time of 60 represents the date January 1, 1970 12:01:00. </p><p> </p><p> A 4-byte integer has a maximum value of 2,146,483,547. This time (known as maximum time) corresponds exactly to January 19, 2038 3:14:07. </p><p> </p><p> This explains why UNIX programs in large, were pretty much unaffected by the Y2K bug - since it kept track of time in units of seconds. However, its own version of Y2K will occur a second past the maximum time.</p><p> </p><p> <strong>Consequence</strong></p><p> At exactly January 19, 2038 3:14:08 (one second past the maximum UNIX time), one of two things can happen to programs that keep track of time with this format. It will either crash and stop functioning altogether, or it will rollback time to the beginning of UNIX time: the first minute of 1970. </p><p> </p><p> What this means for computer programs and systems that haven't been fixed depends on the program itself. The consequences can be similar those predicted with the Y2K bug. </p><p> </p><p> Many pieces of software that involve future dates (i.e. Calendars, Investment calculators etc.) are already experiencing problems with the 2038 bug, being unable to involve any dates past 2038. </p><p> </p><p> Also, some calculations that involve averaging dates have begun to fail as well. For example, if an algorithm adds two dates together and then divides by 2 to find the middle date, it would fail.</p><p></p><p></p><p></p><p><strong> Preparation</strong></p><p> Many popular software updates recently are already addressing this issue. If your favourite software isn't, do not worry, the bug will occur in over 30 years. During that time, it is very likely that most systems will have gone to a 64-bit operating system (where this problem is averted for over 290 billion years - much past the lifespan of the sun). </p><p> </p><p> For those systems or programs still on a 32-bit platform, the bug will indeed cause problems, but fixing the problem will not be difficult due to the nature of it. It will not require recoding how dates are stored in a program as was the case with Y2K, dates will merely be required to be stored in a primitive type with larger precision. </p><p> </p><p> As for programs that involve averaging dates, the simplest solution would be some basic alegebraic manipulation: to divide the dates by two before adding them together.</p><p> </p><p> <strong>Machines Affected</strong></p><p> Currently (March 1998) there are a huge number of machines affected. Most of these will be scrapped before 2038. However, it is possible that some machines going into service now may still be operating in 2038. These may include process control computers, space probe computers, embedded systems in traffic light controllers, navigation systems etc. etc. Many of these systems may not be upgradeable. For instance, Ferranti Argus computers survived in service longer than anyone expected; long enough to present serious maintenance problems. </p><p> </p><p> <em>Note</em>: Unix time is safe for the indefinite future for referring to future events, provided that enough bits are allocated. Programs or databases with a fixed field width should probably allocate at least 48 bits to storing time values.</p><p></p><p>Hardware, such as clock circuits, which has adopted the Unix time convention, may also be affected if 32-bit registers are used. </p><p> </p><p> In my opinion, the Y2K38 threat is more likely to result in aircraft falling from the sky, glitches in life-support systems, and nuclear power plant meltdown than the Y2K threat, which is more likely to disrupt inventory control, credit card payments, pension plans etc. The reason for this is that the Y2K38 problem involves the basic system timekeeping from which most other time and date information is derived, while the Y2K problem (mostly) involves application programs. </p><p> </p><p> <strong>Emulation and Megafunctions</strong></p><p><strong> </strong></p><p> While 32-bit CPUs may be obsolete in desktop computers and servers by 2038, they may still exist in microcontrollers and embedded circuits. For instance, the Z80 processor is still available in 1999 as an Embedded Function within Altera programmable devices. Such embedded functions present a serious maintenance problem for Y2K38 and similar rollover issues, since the package part number and other markings typically give no indication of the internal function. </p><p> </p><p> <strong>Software Issues</strong></p><p><strong> </strong></p><p> Databases using 32-bit Unix time may survive through 2038. Care will have to be taken to avoid rollover issues.</p></blockquote><p></p>
[QUOTE="Ranhiru, post: 1085274, member: 17748"] [B] [IMG]http://www.y2k38.info/Year_2038_problem.gif[/IMG][/B] [B]Y2K38[/B] [LIST] [*][URL="http://www.y2k38.info/#"]On January 19, 2038, UNIX-based programs and UNIX-like operating systems will run out of time. To be more precise, at 3:14:07 GMT, UNIX will be exactly 1 billion seconds old. Many see this as a milestone, but from a technical point of view, this can mean disaster for computer programs and systems around the world.[/URL][/LIST] [B]Explanation[/B] UNIX keeps track of time in a 4-byte integer that represents the number of seconds after January 1, 1970 12:00:00. For example, a time of 60 represents the date January 1, 1970 12:01:00. A 4-byte integer has a maximum value of 2,146,483,547. This time (known as maximum time) corresponds exactly to January 19, 2038 3:14:07. This explains why UNIX programs in large, were pretty much unaffected by the Y2K bug - since it kept track of time in units of seconds. However, its own version of Y2K will occur a second past the maximum time. [B]Consequence[/B] At exactly January 19, 2038 3:14:08 (one second past the maximum UNIX time), one of two things can happen to programs that keep track of time with this format. It will either crash and stop functioning altogether, or it will rollback time to the beginning of UNIX time: the first minute of 1970. What this means for computer programs and systems that haven't been fixed depends on the program itself. The consequences can be similar those predicted with the Y2K bug. Many pieces of software that involve future dates (i.e. Calendars, Investment calculators etc.) are already experiencing problems with the 2038 bug, being unable to involve any dates past 2038. Also, some calculations that involve averaging dates have begun to fail as well. For example, if an algorithm adds two dates together and then divides by 2 to find the middle date, it would fail. [B] Preparation[/B] Many popular software updates recently are already addressing this issue. If your favourite software isn't, do not worry, the bug will occur in over 30 years. During that time, it is very likely that most systems will have gone to a 64-bit operating system (where this problem is averted for over 290 billion years - much past the lifespan of the sun). For those systems or programs still on a 32-bit platform, the bug will indeed cause problems, but fixing the problem will not be difficult due to the nature of it. It will not require recoding how dates are stored in a program as was the case with Y2K, dates will merely be required to be stored in a primitive type with larger precision. As for programs that involve averaging dates, the simplest solution would be some basic alegebraic manipulation: to divide the dates by two before adding them together. [B]Machines Affected[/B] Currently (March 1998) there are a huge number of machines affected. Most of these will be scrapped before 2038. However, it is possible that some machines going into service now may still be operating in 2038. These may include process control computers, space probe computers, embedded systems in traffic light controllers, navigation systems etc. etc. Many of these systems may not be upgradeable. For instance, Ferranti Argus computers survived in service longer than anyone expected; long enough to present serious maintenance problems. [I]Note[/I]: Unix time is safe for the indefinite future for referring to future events, provided that enough bits are allocated. Programs or databases with a fixed field width should probably allocate at least 48 bits to storing time values. Hardware, such as clock circuits, which has adopted the Unix time convention, may also be affected if 32-bit registers are used. In my opinion, the Y2K38 threat is more likely to result in aircraft falling from the sky, glitches in life-support systems, and nuclear power plant meltdown than the Y2K threat, which is more likely to disrupt inventory control, credit card payments, pension plans etc. The reason for this is that the Y2K38 problem involves the basic system timekeeping from which most other time and date information is derived, while the Y2K problem (mostly) involves application programs. [B]Emulation and Megafunctions [/B] While 32-bit CPUs may be obsolete in desktop computers and servers by 2038, they may still exist in microcontrollers and embedded circuits. For instance, the Z80 processor is still available in 1999 as an Embedded Function within Altera programmable devices. Such embedded functions present a serious maintenance problem for Y2K38 and similar rollover issues, since the package part number and other markings typically give no indication of the internal function. [B]Software Issues [/B] Databases using 32-bit Unix time may survive through 2038. Care will have to be taken to avoid rollover issues. [/QUOTE]
Insert quotes…
Verification
Dawasata paya keeyak thibeda?
Post reply
Top
Bottom