23
The Y2K38 Problem B.Rajesh CSE Final Year

Y2K38 Problem.ppt

Embed Size (px)

DESCRIPTION

Y2K38 Problem.ppt

Citation preview

Page 1: Y2K38 Problem.ppt

The Y2K38 Problem

B.RajeshCSE Final Year

Page 2: Y2K38 Problem.ppt

Area Of Focus

Name Overview The Y2K38 Bug Problem Definition Importance of Time Time and Date Calculation Consequences Solution

Page 3: Y2K38 Problem.ppt

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

Name

Page 4: Y2K38 Problem.ppt

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.

Page 5: Y2K38 Problem.ppt

Problem Definition

The root cause of this problem is exceeding the signed time_t (2 147 483 647) range to un-

signed time_t(-2 147 483 647)number.

Page 6: Y2K38 Problem.ppt

Problem Definition

Problem arises due to “Standard time library”

Programs not allocating enough bits to internal time

modern 32-bit computer stores a "signed integer" data type, such as time_t, in 32 bits

Highest number these 31 data bits can store works out to exactly 2 147 483 647.

time_t value, 2 147 483 647, represents January 19, 2038, at 7 seconds past 3:14 AM Greenwich Mean Time

Page 7: Y2K38 Problem.ppt

Importance of Time

Major aspect of the physical world over which we have no control

independent variable in most computer applications

real time applications

Page 8: Y2K38 Problem.ppt

Time and Date CalculationDate & time time_t representation1-Jan-1970, 012:00:00 AM GMT

Page 9: Y2K38 Problem.ppt

Date & time time_t representation1-Jan-1970, 012:00:00 AM GMT

1-Jan-1970, 112:00:01 AM GMT

Time and Date Calculation

Page 10: Y2K38 Problem.ppt

Time and Date CalculationDate & time time_t representation1-Jan-1970, 012:00:00 AM GMT

1-Jan-1970, 112:00:01 AM GMT

1-Jan-1970, 6012:01:00 AM GMT

Page 11: Y2K38 Problem.ppt

Time and Date CalculationDate & time time_t representation1-Jan-1970, 012:00:00 AM GMT

1-Jan-1970, 112:00:01 AM GMT

1-Jan-1970, 6012:01:00 AM GMT

19-Jan-2038, 2 147 483 64103:14:01 AM GMT

Page 12: Y2K38 Problem.ppt

Time and Date CalculationDate & time time_t representation1-Jan-1970, 012:00:00 AM GMT

1-Jan-1970, 112:00:01 AM GMT

1-Jan-1970, 6012:01:00 AM GMT

19-Jan-2038, 2 147 483 64103:14:01 AM GMT

19-Jan-2038, 2 147 483 642 03:14:02 AM GMT

Page 13: Y2K38 Problem.ppt

Time and Date CalculationDate & time time_t representation1-Jan-1970, 012:00:00 AM GMT

1-Jan-1970, 112:00:01 AM GMT

1-Jan-1970, 6012:01:00 AM GMT

19-Jan-2038, 2 147 483 64103:14:01 AM GMT

19-Jan-2038, 2 147 483 642 03:14:02 AM GMT

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

Page 14: Y2K38 Problem.ppt

Time and Date CalculationDate & time time_t representation

19-Jan-2038, 2 147 483 644 03:14:04 AM GMT 19-Jan-2038, 2 147 483 645 03:14:05 AM GMT 19-Jan-2038, 2 147 483 646 03:14:07AM GMT 19-Jan-2038, 2 147 483 647 03:14:07 AM GMT

1-Jan-1901 -2 147 483 647 03:14:08 AM GMT

Page 15: Y2K38 Problem.ppt

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..

Page 16: Y2K38 Problem.ppt

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.

Page 17: Y2K38 Problem.ppt

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 2038-compliant systems

Page 18: Y2K38 Problem.ppt

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.

Page 19: Y2K38 Problem.ppt

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

go all the way up to4 294 967 295

Page 20: Y2K38 Problem.ppt

Conclusion and Suggestion

Most operating systems designed to run on 64-bit hardware already use signed 64-bit time_t

integers, effectivelyeliminating the Year 2038 problem in any

software that has been developed to use the extended format

Page 21: Y2K38 Problem.ppt
Page 22: Y2K38 Problem.ppt

References

1.http://en.wikipedia.org/wiki/Year_2038_problem

2.www.y2k38.com

3.www.gnu.org

Page 23: Y2K38 Problem.ppt

Thank YouFor Your

Cooperation