Professional Documents
Culture Documents
Y2K38 Problem
Y2K38 Problem
Problem
Area Of Focus
Name Overview The Y2K38 Bug Problem Definition Importance of Time Time and Date Calculation Consequences Solution
Name
Abbreviation for the Y2K38 is adopted from Y2K Acronym accredited by Massachusetts programmer David Eddy Y = year, k = kilo or 1000 (2k = 2000) Also known as the Unix millennium bug or Y2K38 bug
Overview
January 19, 2038 will be a serious problem for many platforms, because these systems will "run out of time". Erroneous values satellites falling out of orbit, massive power outages, hospital life support system failures, phone system interruptions, bank problems, etc.
Problem Definition
The root cause of this problem is exceeding the signed time_t (2 147 483 647) range to unsigned time_t(-2 147 483 647)number.
Problem Definition
Problem arises due to Standard time library
Importance of Time
Major aspect of the physical world over which we have no control independent variable in most computer applications real time applications
60
60
60
60
Consequences
Greatest danger with the Year 2038 Problem is its invisibility Scheduling software, billing programs, personal reminder calendars, and other such pieces of code that set dates in the near future will fail as soon as one of their target dates exceeds 19-Jan-2038, assuming a time_t is used to store them.
Contd..
Consequences
Embedded functions present a serious maintenance problem for all rollover issues like the year 2038 problem The 2038 problem is more likely to result in air traffic control disasters, life-support systems failure, and power grid meltdown than the Y2K problem.
Consequences
Many data structures in use today have 32-bit time representations embedded into their structure. File systems (many files systems use only 32 bits to represent times in inode) COBOL systems from the 1970s, 1980s and 1990s that have not been replaced by 2038compliant systems
Solution
There is no universal solution for the Year 2038 problem. Any change to the definition of the time_t data type would result in code compatibility problems in any application in which date and time representations are dependent on the nature of the signed 32-bit time_t integer.
Solution
Adopt the 64-bit computers In a 64-bit program, a time_t could represent any date and time in the future out to 292 000 000 000 A.D., which is about 20 times the currently estimated age of the universe. Unsigned in 32-bit software
an unsigned 32-bit integer can
References
1.http://en.wikipedia.org/wiki/Year_2038_problem
2.www.y2k38.com
3.www.gnu.org
Thank You
For Your Cooperation