Code Comments
Programming Forum and web based access to our favorite programming groups.http://www.switched.com/2008/03/14/...ernet-will-end/ The Unix 2038 bug probably isn't news to some. But it reminds me of the prev alent attitude ten years ago, that COBOL programmers were negligent or "lazy" for taking shortcuts with dates. I'm guessing that in 1970 no one thought we'd be using UNIX in the next century.
Post Follow-up to this messageOn Sat, 15 Mar 2008 10:19:26 -0400, Robin Lee <robinlee@news.com> wrote: >http://www.switched.com/2008/03/14/...ernet-will-end/ > >The Unix 2038 bug probably isn't news to some. But it reminds me of the pre valent >attitude ten years ago, that COBOL programmers were negligent or "lazy" for taking >shortcuts with dates. I'm guessing that in 1970 no one thought we'd be usin g UNIX in >the next century. Unix's system timer has a window 1970 through 2037 for positive values and 1 901 through 1969 for negative values. It is stored in an unsigned int, which has 31 bit s of data and a sign. The timer resolution is one second. There are 2^31 seconds in 68 yea rs. There is no easy fix for two reasons: 1. It is not practical to upgrade the operating system in embedded processor s, such as in car engines, medical devices, telephones. 2. Some have used timer_t format in files and messages. Any change would 'br eak' old software and file data. Operating systems compiled to 64 bits store the time as a 63-bit long int, w hich can represent billions of years. Records and messages using timer_t must be refo rmatted. Going to an unsigned integer would buy 68 years, but break dates before 1970 e.g. your birth date. A sliding window would be unacceptable because the recipient of messag es and records would not know where the creator's epoch began. Who cares? We'll be gone by 2038. :)
Post Follow-up to this message"Robert" <no@e.mail> wrote in message news:n7dot3h2c8kahcckj1gm612pl6j2o4nunh@ 4ax.com... > On Sat, 15 Mar 2008 10:19:26 -0400, Robin Lee <robinlee@news.com> wrote: > > > Unix's system timer has a window 1970 through 2037 for positive values and > 1901 through > 1969 for negative values. It is stored in an unsigned int, which has 31 > bits of data and > a sign. The timer resolution is one second. There are 2^31 seconds in 68 > years. > > There is no easy fix for two reasons: > 1. It is not practical to upgrade the operating system in embedded > processors, > such as in car engines, medical devices, telephones. > 2. Some have used timer_t format in files and messages. Any change would > 'break' > old software and file data. > > Operating systems compiled to 64 bits store the time as a 63-bit long int, > which can > represent billions of years. Records and messages using timer_t must be > reformatted. Going > to an unsigned integer would buy 68 years, but break dates before 1970 > e.g. your birth > date. A sliding window would be unacceptable because the recipient of > messages and records > would not know where the creator's epoch began. > > Who cares? We'll be gone by 2038. :) > Speak for yourself. If you can't take it with you, I ain't going...:-) Pete. -- "I used to write COBOL...now I can do anything." >
Post Follow-up to this messagePete Dashwood wrote: > "Robert" <no@e.mail> wrote in message > news:n7dot3h2c8kahcckj1gm612pl6j2o4nunh@ 4ax.com... > Speak for yourself. > > If you can't take it with you, I ain't going...:-) Ditto, I worked too hard for it all. > > Pete. > -- > "I used to write COBOL...now I can do anything." I always could do anything, I'm a Rexx coder :) Mickey
Post Follow-up to this messageOn Tue, 25 Mar 2008 11:48:11 -0700, Mickey wrote: > I always could do anything, I'm a Rexx coder :) > > Mickey Last time I tried it, REXX was appallingly slow and CPU-intensive. Has that changed? Tim
Post Follow-up to this messagePowered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.