The Quickly Descending Unix Timestamp
Teach writes: "If my calculations are correct, on Thursday, April 19, 2001, at 04:25:21 UTC (00:25:21 EDT and late Wednesday at 21:25:21 PDT), the UNIX clock will read 987654321, which is pretty cool. This will be the first of two such "significant" events in 2001, the second being 01:46:39 UTC on 2001-09-09, when the clock will read 999999999 (and then of course "roll over" to 1000000000 one second later). Use the Time Zone Converter to help you figure out when this will occur in your area, or read up on other
critical dates (such as when the 32-bit signed UNIX clock overflows in 2038)."
Not many programs are gonna care how many digits are in a timestamp, but I bet some do try to format stuff assuming a less-than-one-billion-seconds-since-epoch time.
Review your code?
[
I hate to crapflood and troll, but this has to be the dumbest article on /.
How are we supposed to discuss this?
Its like when the "annoying" guy comes into your cube and says some dumb fact, like "hey, the timestamp will be 987654321 soon!", and you try to ignore him so he'll go away...
Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
I thought the Mayans predicted the world would end in 2021.. But if I'm still alive in 2038, I think I'll be more concerned about my next change of Depend Undergarments than what my Unix clock is doing...
If this doesn't matter, I don't know what does! I wish I was old enough to have experienced 12:34 on 6th May 1978 (5/6/78) (or 5th June 1978, for those who do it DD/MM/YY).
Pointlessly,
~jawad
Fortunately, the Unix internal clock works in a manner very similar to the odometer on the Slashdot Cruiser. When you go to trade in your Unix system and step up to Windows, all you have to do is crack open the little block box inside your machine and roll it back several hundred thousand milliseconds.
Nobody will know the difference save the occasional hidden-camera "consumer protection" reporterette. These people seem to have nothing better to do than spy on semi-honest computer salesman and publicly humiliate them for the crime of trying to feed their families. We could talk about the silliness of having to disclose whether or not your computer had its case straightened after a minor plastic-bender, but that would be a whole nother post....
Got a full tank of hot grits and a penis bird in the glove box.
987656789 would be equally interesting to me
My other sig is extremely clever...
I have some REAL news I must share with ya'll...
NEWS BULLETIN: Poland's worst air disaster occurred today when a small two-seater Cessna 152 plane crash landed into a cemetery early this afternoon in central Poland. Polish search and rescue workers have recovered 826 bodies so far and expect that number to climb as digging continues into the evening.
Please remove BOOGERS when sending me eMail. Thankyou...
Sincerely,
But I'm sure you already Gnu that.
If you must have the counting dates, you can always look forward to 8/9/01. Frankly, I'm looking forward to the weekend.
Then trying to invite people to a Unix rollover party will surely get me put in the geek hall of fame by my non-geek friends. It does coincidentally fall just before my SO's birthday though, so maybe I can get a away with it if I don't tell the the real reason for the party until just before the roll over occurs.
Work for Change & GET PAID!
If there was ever a reason for geeks to have a picnic, barbecue, and put back some beers...
....ok, actually many other people thought of it first, I've actually heard of a couple of such parties planned in the SF bay area -- you should plan one in your neighborhood!
a "Billion Seconds of Unix" party sounds like a great idea to me....
- jonathan.
The Moral Majority was disbanded in 1989
I've been having some free time lately, so I've gotten to pondering some questions like these. One of my questions was about why a rational and benevolent deity would allow Survivor II to air on primetime television. The other has to do with the timestamp and a theory of mine.
You see, neither would a rational and benevolent deity allow the unix timestamp to lap like that. The commotion involved would be significantly worse than the Y2K bug was, because at least with the millennium, people knew to be on the lookout for all sorts of strange behavior (not just computer bugs). But 2038? What kind of date is that? Where's your catchy three-syllable mnemonic for that one?
So clearly, there has to be another explanation. Mine is that Armegeddon will intercede and prevent this disaster from occurring. A rational and benevolent deity would realize that it would be far better for the universe to be destroyed than for time to cease.
This poses all sorts of interesting moral, legal, and ethical questions. What should we do about debts that are set to expire after 2038? Should mandatory euthenasia be implemented on all infants born after 2036 so as to avert their agony when the heavens open up and the clarion trumpets of Judgment call forth the arrival of hellfire and brimstone? Will we be able to sublet our cottages in Boca as we've grown accustomed to doing?
This calls for immediate discussion. A committee of learned professors in each of the relavent disciplines (religion, philosophy, sociology, art history) must convene and solve this problem before it becomes the death of us. We have only thirty seven more years left, so let's make the best of it.
So, you have a UNIX timestamp you want to check out? Try Perl on the command-line:
perl -MPOSIX -le 'print ctime(999999999)'
perl -MPOSIX -le 'print ctime(987654321)'
For another timezone, you can just set the TZ environment variable. On the command-line, or in the code:
perl -MPOSIX -le '$ENV{TZ}="CST";print ctime(200)'
Actually, because there are historical reasons for ctime supplying a newline, you can drop the "l" from "-le".
Shouldn't that be ascending since the numbers are going up? Descending implies the numbers are going down, which they surely are not.
[Got Hosting?]
That should teach to overclockers!!
Victor
Will I be able to view the UNIX times on my Linux box?
Trolling is a art,
I find myself quivering with excitement and anticipation.
I'm looking forward to 6969696969... When will THAT happen?
Eleven.
Eleven?
It's not even funny. It's ridiculous.
props to all dead homiez
NON-geek friends? What kind of geek are you?
XML causes global warming.
My car's odomoeter will roll over to 12345 in 93 miles.
perl -le 'print scalar gmtime(999999999)'
And of course localtime() for your own timezone.
Liberty in your lifetime
ahhh...what amuses a geek. :^)
--
Wooden armaments to battle your imaginary foes!
Damn, I can't believe I missed 696969696! Seeing 31337 would have been cool, too. Uhm, yeah.
date -d "$((987654321 - $(date +%s))) sec"
tells you in your local time when that event will happen... (well evntually it is 1 second off if the first date terminates not in the same second as the second... lg mond.
9/9 also happens to be my birthday, so my numbers will be rolling over too. Woooooohooooooo!
> Thursday, April 19, 2001 ... the UNIX clock will read 987654321, which is pretty cool.
OK, but when are we going to get the Slashdot User #987654321 throw-down troll account?
We went from 100000 to 400000 so fast that I wouldn't expect it to take too much longer.
--
Sheesh, evil *and* a jerk. -- Jade
I have something to discuss .. like, why does no one think its fun to know when it happens? Has the market bust turned all us geeks into blinder-wearing profit-seeking business types? How useful is the obfuscated Obfuscated C Code Contest? But geeks still seem to dig it ... :) While I may not be staring at 'while (1) { printf("%lu\n", time()); }' when the rollover happens, at least its cool to know we lived the moment! It only happens one in one billion times!
"Old man yells at systemd"
When UNIX makes this mistake it, it's "pretty cool". What would it be if MS-Windows did it?
"You know you don't act like a scientist, you're more like a game show host." Dana Barret
In my universe, time is flowing forward. --Ty
Is there any logical reason for the date to be using a signed number as opposed to unsigned?
Did the great Unix engineers think we'd find a method of time travel and take Unix back to before the epoch?
Fear my low SlashID! (bidding starts at $500)
Do not anger the worm.
I think the best solution to the year 2038 bug is simply to roll everybody's clock back to the year 1970. Problem solved!
Besides, disco was so groovy, wasn't it? Yeah, baby, yeah!!
--
Accountability on the heads of the powerful.
Power in the hands of the accountable.
The other significant thing that will happen on that date is that moderators the world over will be confused, wondering if the moderation guidelines actually changed or not.
(This is in reference to the message moderators get saying "Have you read the Moderation Guidelines yet? Updated 9.9". They were updated 9/9/1999, which I guess was such a cool date that they never bothered changing it again, just updated the FAQ. Of course, saying "Updated 9.9.99" would be even cooler. Maybe CmdrTaco is waiting for 1.1.11 to update them again, or even 2.2.2222...
So because it's illegal, it's automatically wrong?
--
Not being helpful doesn't make it a troll
--
In case you were wondering, unixtime 123456789 occured on
Thu Nov 29 13:33:09 1973
(please do not waste mod points on this post, thanks)
Why not just change:
typedef long int __time_t;
into:
typedef unsigned long int __time_t;
...that anybody still using a 32-bit system in four decades deserves what he gets.
Come on, does that sound so likely? Four decades ago you were lucky to be able to afford all 8 bits in your 8-bit system. And the graph is not a linear one (think Moore here), so four decades from now they'll be laughing at us for working in such a cramped 32-bit address space.
Solaris has been 64-bit for years now. Same for a number of other Unixes. If somebody is honestly worried about time_t, tell him that a 64-bit time_t can hold more seconds than the probable remaining lifetime of the universe.
The Divine intent is the same here as it is for folks driving fast in highway construction zones: stupid people deserve what happens to them.
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
These numbers are arbitrary. This is a smaller version of the same kind of superstition that gives rise to believing in Nostradamus and other hooey.
Never thought I'd see a link to John Stockton's website in a Slashdot story. Talk about world's colliding!
--
"I have a good idea why it's hard to verify programs. They're usually wrong." --Manuel Blum, FOCS 94
On FreeBSD:
[~] edwin@p6>date -r 987654321
Thu Apr 19 06:25:21 CEST 2001
bash$
Article on Chronology
Luckily we have more time. It's only the year 936AD and as soon as we realize it, we'll set all the unix clocks back.
I dunno, but that sounds like one of the best excuses for a geek party I've ever heard.
;-)
Heck, that might even be a big enough party to be called a "Conference."
ANSI C defined the epoch as 00:00:00 UTC 1 January 1970 C.E. and defines the set of functions in the time.h library as returning a structure -- among others -- as time_t, defined as a long, which is 32-bits, and is the number of seconds since the epoch. The problem is of course that a 32-bit number can only store so-many seconds, so that come Jan 2038, when just over 2 billion (2e+9) seconds have passed, we go into negative numbers, perhaps around 1902? :) Anyway, so all you are saying is if we do a "time(NULL)" the time_t, or long, returned when converted to decimal will be "987654321" and that we are rapidly approaching "1000000000" and expect "1234567890" sometime later this decade. Okay, I see. Now as for any other language which uses the same time structure, keep in mind that it was probably compiled, if not directly, than inderectly under C at some point (even if it is now 'self-compiling' as C is. So let's give credit where credit is due, people! Long live ANSI C!!!
Be Seeing You,
A C++ programmer, really!
Time Lord, Dark Horse: The Techno Mage of Gallifrey
... with the command:
watch -n 1 date +%s
or better yet:
watch -n 1 'echo "The time is near: `date +%s`"'
I think the best solution to the year 2038 bug is simply to roll everybody's clock back to the year 1970
There's a simpler solution: typedef unsigned long time_t; should take us into the 22nd century before we have a problem. (The DJGPP C library already does this.) Another solution is typedef long long time_t; which is on nearly the same order of magnitude as the best estimates for the age of this universe.
Will I retire or break 10K?
Since in the next few years 64 bit processors will be coming into the mainstream I think now is the time to start work on fixing the Year 2038 issue. Operating systems will need to be changed to move from 32 to 64 bit word lengths so why not take this oppertunity to switch from 32 bit to 64 bit times on Linux and *BSD (and any other Open Source operating systems you care to mention).
As well as rewiting the operating systems, applications may need work for the IA64 chips. While this is being done why not make the programs compatible with both 64 bit and 32 bit timestamps?
A further advantage would be to take make better use of the extra bits and switch to milliseconds since 1970, instead of seconds. This extra precision could be useful for some applications and will still be good till 300,000,000 AD.
Any comments?
--
Steven Murdoch.
Steven Murdoch.
web: http://www.cl.cam.ac.uk/users/sjm217/
Also, I don't know if this is just a Perl thing, but dates "past" 2**31-1 (i.e., negative numbers when "signed") seem to be used to represent dates far before 1970.
For example:
% perl -le 'print scalar gmtime(2**31)'
Fri Dec 13 20:45:52 1901
% perl -le 'print scalar gmtime(2**31+2)'
Fri Dec 13 20:45:54 1901
% perl -le 'print scalar gmtime(2**31+2**30)'
Mon Dec 23 10:22:56 1935
Liberty in your lifetime
Is there any plan for a *nix wide upgrade to a 64 bit time variable in the next few years? I figure we ought to take care of this now, otherwise the entire *nix community will be mocked by the Windows and Mac communities in the 2030s. Let's just get the upgrade over with and not have to worry about it in the future.
"The universe seems neither benign nor hostile, merely indifferent." --Carl Sagan
Is there any logical reason for the date to be using a signed number as opposed to unsigned?
I assume that the architects of the system wanted to represent their date of birth. It's the same thing that motivated the Mac OS designers to choose 1904 as the Mac's (unsigned) epoch.
Will I retire or break 10K?
Then again, I'm a geek.
--Any sufficiently reliable magic is indistinguishable from technology.
I have a feeling that if you call this the "real reason for your SO's birthday party, you'll just be celebrating getting you ass kicked...
3/3/2001 - all sections add up to 3. Also, it's an Odd Day - all non-zero digits are odd, AND all sections are odd, AND all section's digits sum up to odd totals. Since these are also all prime, it was also a Prime Day.
Trivia Question: When will be the next Prime Millisecond, as measured by RL -and- by the Unix clock?
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
Actually, everything DOES happen all at once. Your brain only simulates for you the passage of time so that it is not completely overwhelmed. You will already be dead before you finish reading this, of course, and yet unborn as well. Requiescat in peace and happy birthday.
--
Scott Robert Ladd
Master of Complexity
Destroyer of Order and Chaos
All about me
I honestly did not know this.
That's what I like about /. I make an off the cuff smartass comment, and I actually end up learning something.
--Tymaybe you or the cops you do realize it's illegal right?
No it's not, I can go out and buy some right now, walk over to the police building and offer some to one of the officers, he'll probably smile at me and refuse the offer.
just because it's illegal in your lame-ass country doesn't mean it's illegal everywhere
---
it depends on the UNIX. Solaris (sparc), Digital Unix, etc, are all 64 bit already as they run on 64 bit processors.
There is at least one application out there that had a problem with the September 9 rollover of the UNIX time stamp.
The secret to enjoying Slashdot is to realize that it should not be taken too seriously.
of an access to a website, etc. that has a Unix time counter (if that's even possible)? And what's the significance of the date chosen to be time 0?
---
---
I'm just an ordinary man with nothing to lose.
Wouldn't that result in a negative timestamp? Subtract the numbers of seconds till 1978 from 0...
Fear and Loathing in Unix
San Francisco in the middle seventies, was a very special time and place to be a part of, but no explanation, no mix of code or shell scripts or hardware can touch that sense of knowing that you were there and coding, in that corner of time in the world. Whatever it meant. There were errors in any direction, at any hour... you could debug code anywhere. There was a fantastic universal sense that whatever we were doing was right, that we were winning, and that I think was the handle. That sense of inevitable victory over the forces of old and evil. Not in any mean or military sense, we didn't need that. Our OS would simply prevail. We had all the momentum. We were riding the crest of a high and beautiful wave. So now, less then 60 years later, you can go up on a steep hill in California and look east over rolling brownouts, and with the right kind of eyes, you can almost see the high water mark. That place where the wave finally broke... and rolled over.
Earn cash in your spare time! Blackmail your friends!
perl -e 'while(($time=time())<=987654321){sleep(1); print "$time\n"}'
--
It's clear that the obvious solution is to switch to 33-bit signed ints, thus buying us another 2 billion seconds without losing reverse-compatibility and using a minimum expenditure of bits. That way everybody will be happy.
--
chances are there is no ATM, Airline, or Missile defense control computer systems running on a bash shell script. At most my automatic comix downloader won't work:). I'm not saying there won't be any issues when this rolls over, but I think there is even less of a reason to worry about it then there was for the 2000 rollover.
"as plurdled gabbleblotchits on a lurgid bee" - Prostetnic Vogon Jeltz. (One man's humorous is another mans flamebait)
Ok, you've said enough about Alcohol and Tobacco, but what about marijuana?
that i was going to have to take the day off to geek out with cohorts. alas, the date in question falls on a weekend, for most, if not all, of the world.
but then again, was that the original plan..?
those two wacky berkely guys
and the Irishman took the fly in his hands and yelled, "spit it out!"
Do you have any idea how hard it's going to be to sell the public on the Y2.038K bug? Jesus.
I haven't seen a challenge like this since OS/2...
Indeed.
... would be 7f6. (As in 0x7f6)
2001-04-19:09:53:27 - Human Life Fails (Chinese at fault. U.S. refuses to apologize for failure)
--
+1 Insightful, -1 Troll. What can I say, I'm an Insightful Troll.
If memory serves Mac clocks will run out at the same time, at least with Classic
- Apple Computer......proudly going out of business for over twenty years.
that's why I have my Gnome desktop clock displaying UNIX time:
987628906
987628907
987628908
.
.
.
Energy: time to change the picture.
i was in 4th grade. principal comes on the intercom: "please note that in about 2 minutes it will be 1:23 and 45 seconds. because it's june 7th, 1989, at that time it will be 1:23:45, 6/7/89". kinda cool (even though they fudged it and it should have been 1 a.m., not 1 p.m. (1300 hours)), and neat that the told us about a significant "nerd" event.
int main()
{
int p;
while (1) {
usleep(100 * 1000);
if (p != time(0))
printf("tid: %d\n",time(0));
p=time(0);
}
return 0;
}
-- Cure for Cancer instead of SETI! (only w32 yet - mail and beg)
Any bets on which media company picks up on this first? (I'm guessing CNN -- but then again, I suppose they might actually have to understand the problem first.
Really. It was quite fulfilling.
this is just not important
-- Spankmeister General
32-bit systems can only store a maximum of 2^31 non-negative seconds (2,147,483,648 seconds or about 68 years). Which means that 32-bit UNIX systems won't be able to process time beyond 19 Jan 2038 at 3:14:07 AM UTC.
One of the common solutions will be to switch to 64-bit architecture systems that can store a maximium of 2^63 non-negative seconds (9,223,372,036,854,775,808 [9.2 Quintillion] seconds or about 292.27 Billion years), which would be sufficient for quite a long time!
I haven't seen anyone mention the other cool date this year: October 2, 2001.
In other words: 2001-10-02
Notice it is palindromic. The last palindromic date would have been 1380-08-31, quite some time ago.
Maybe on this date, computers will get confused as to which direction they were going and start running backwards.
A choice of masters is not freedom
Gosh, I really can't wait to see all the trouble and panic in 5,391,559,471,918,239,497,011,222,876,596, when the 128-bit signed Unix timestamp fails... OK, maybe the 256-bit timestamp failure will be much more interesting, but honestly, I'm not gonna wait that long.
If you go check the html code on slashdot pages, you will see they load a "picture" named "pc.gif" (pagecount ?) with as parameter a number, being now approximately 987 000 000. Last time I checked a couple of months ago, it was 980 000 000. IIRC the /. FAQ said they served 1e6 pages a month. This is the same order of magnitude so pc.gif might really be the page count.
This means in some months now, slashdot will have served 1 billion pages. Hats off, cmdrTaco and cowboyNeal. Maybe we could start another contest to see when it happens.
I can't wait for the MSNBC story about this one.
Redmond WA.
Today Bill Gates announced that all *nix systems will halt with the September 9th coming of the S1B bug. MSNBC recommends that all *nix users switch to Windows XP before it is too late. Steve Balmer was reported to say how amazed he was that *nix could be so short sighted. XP was designed to be S1B compliant right from the start (after installing SP8 due sometime in September). All you Windows users will be kept safe from this, and should not consider going to any rogue operating systems at this time.
Ummm, all the linux geeks here must not be familiar with NT's (and thus windows 2000, XP, etc) internal representation of time. It's stored (in a quadword) as number of 100 nano-second intervals since 1600 (since its usefull to have a single format which can express events which happened in the past - you can't write an app which stores birthdates in a UNIX-time compatible format).
If you haven't checked out the Critical Dates link, it's fascinating (if somewhat repetitve) reading. Just think! Someone actually figured out that, on Tuesday, January 1, 29602, NTFS fails! I'm thinking, if you're stilling using NTFS in 27,000 years, you're probably gonna get what's coming to you.
while I admittedly didn't initialize p (not that it really matters), I did make sure you couldn't miss this important moment with almost a whole second! :) :))
and don't forget to ntpdate some servers you _REALLY_ trust!
-- Cure for Cancer instead of SETI! (only w32 yet - mail and beg)
I must have got off in the wrong universe -- my Unix Timestamp seems to be ascending...
This shouldn't be that exciting.
Take up a hobby.
Anonymous posts are filtered.
at least with Classic
/usr/include/time.h:
/usr/include/ppc/ansi.h:
/* time() */
MacOS X too; it's BSD after all.
From
typedef _BSD_TIME_T_ time_t;
And from
#define _BSD_TIME_T_ long
A long on MacOS X is 32 bits.
Meet your fate in '38!
"There is more worth loving than we have strength to love." - Brian Jay Stanley
are you sure its not YOU that broke it?
.
That is, unless you actually have to deal with locales outside the US...
As for me, I've gotten pretty used to it. It's pretty flexible once you understand how it works. I'm not sure what you'd find lacking in at the moment as far as time manipulation, the Gregorian Calendar stuff is pretty good...
"There is more worth loving than we have strength to love." - Brian Jay Stanley
bash-2.03$ L=999999999; R=1000000000; if [ $L -lt $R ]; then echo true; else echo false; fi true bash-2.03$ This is the behavior of bash 2.03 on Ultrix and bash 2.04 on Linux/x86
Black holes are where the Matrix raised SIGFPE
bash-2.03$ L=999999999; R=1000000000; if [ $L -lt $R ]; then echo true; else echo false; fi
true
bash-2.03$
This is the behavior of bash 2.03 on Ultrix and bash 2.04 on Linux/x86
Black holes are where the Matrix raised SIGFPE
Do the math correctly and don't put the UTC there next time. (for any simpltens there who dont understand which time zone it should be it should be your local timezone since the system clock is set to your local time thus the diference is already taken into account)
The real problem will occur when we reach the year 10,000AD and all those date fields short-sightedly set to validate for four digit years fail.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Someone really should put up a sight for Computer date problems and even have those companies producing such date problems to have to report then to the site for listing. This way anyone can look it up on the web, perhaps thru a search engine looking for "Computer date problems log" or such. Even if the problem is in the past or far into the future.
3 S.E.A.S - Virtual Interaction Configuration (VIC) - VISION OF VISIONS!
this also reminds me of a story several months ago about a new proposal for a calendar, with 10 day weeks, etc...
do we really need a new system of recording dates? i know this would pretty hard to sell to the public
--
And computer users complain us Mac users "stupidly" obsess over the design of our computers and interface. Hey, you've got a lead article about when the system clocks make cool numbers. Dorks! :-)
Seriously though, I guess we all obsess over certain things. Let Mac users obsess over design.. Unix users obsess over the technicals and engine under the hood.. and let the rest design programs.
Viola! OS X! At least it's getting there..
Gosh I love Slashdot. hehe
The next comment I write will be ready soon, but subscribers can beat the rush and see it early!
GOD NO!!! I hope Linux 42311.32.12pre9's filesystem, RazorrFS doesn't have this problem.
I like meat helmets.
Secondly, tactics and coordination are important, as is armament. Think of Russia in WWI. Lots of people, poorly armed and trained, led to defeat.
Thirdly, even if they have lots of people, how will China get them over the ocean? In WWII, the Americans were able to use Britain as a waypoint for their invasion. The chinese have no such option. They would have to bring people across the entire Pacific Ocean by the teaspoonful, so to speak. Meanwhile the U.S. navy and the air force would have a field day.
Meanwhile we could probably cover every square mile of China with nuclear fallout. Of course, they would probably do the same to us, in spite of Bush's nuclear shield fantasies. But the point is, more people doesn't automatically translate into winning.
"Any connection between your reality and mine is purely coincidental." -Slashdot
Some other fun ones:
12:34.56 7/8/90
98/7/6 5:43.21
9/9/99
========
For some reason, I got the "lameness" filter on this post for using so many caps. Since the only cap I used was a capital "s" on "Some", I will add this paragraph in the hopes that my post will go through. Wish me luck!
I think this would be a cool idea for a party. The clock rolls over to 1G from 999999999 on the 9th day of the 9th month of the millenium. How cool's that? The 9/9/01 is a Sunday, so it's even kind enough to be on a weekend.
So pack those beers, grab the munchies, set up a *n?x computer with a BIG display showing the countdown and invite all your appreciative geek friends over. Forget the end of the millenium; the stupids celebrated it a year too early anyway. This is the REAL once-in-a-lifetime event....
--
The only thing necessary for the triumph of evil is for good men to do nothing. - Edmund Burke
MacOS X should go along with the rest of the 32-bit Unices, while the standard MacOS goes at 6:28:15 am on February 6, 2040.
Wait till the down with MacOS X crowd (ie. the ridiculous press) hears about that one.
Apple's statement is here.
You missed my point. Not everyone who writes scripts is aware of the difference between "<" and -lt. Does your sysadmin know the difference? I've met some who don't.
That's all I wanted to say. :-)
Good point. I moved the time() call into the loop test without thinking about it. But all it takes to fix it is to reverse the order:
perl -e 'while(($time=time())<=987654321){print "$time\n";sleep(1)}'
--
Hypothesis: God wants us to use 64 bit processors.
Corollary: Every IA-64 delay makes it more likely that Intel executives will burn in hell.
I prefer to drink some of the swell and boffo stuff I bought from ThinkGeek like Cow's Piss 110% CaFFEiNe Drink.
It may be optimistic to think every scriptwriter distinguishes the -lt and the left-angle-bracket (Slashdot chokes no matter how I try to include the character, yes I know how to in HTML, /. doesn't) semantics; for too many, if it works on the three test runs they make, it's correct. Look how many times the problem with 08 and 09 has to be explained in tclsh groups :p
I wonder, too, about sort... did everytone that wrote a thing that sorted on the timestamp, use the -n?
Apple (soon to be the volume leader in UNIX desktops) did a pretty good job of implementing dates in the cocoa framework.
/bin and /usr/bin still use the 32-bit time_t, but this can certainly get fixed over the next 36 years. NSDate is part of the code they've given away in Darwin.
The datum (NSTimeInterval) is a double precision float, with the epoch being the turn of the century 01/01/2000, and even though that give an enormous dynamic range, whenever a date is serialized, it's written out in text.
Of course, all the tools in
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
Either you are referring to the rollover to 1,000,000,000, which is no problem (except perhaps for a few ill-written programs), just a number some people get excited about.
The other case is that you're referring to the future overflow of the currently 32bits signed time counters, somewhere in 2038. This is no problem either, because the size (in bits) of the time counter is not specified, although it is currently 32 bits. In C for example (and this is quite a relevant example, since the most UNIX kernels/libs/programs are written in C), this is accomplished by using the type 'size_t' for time counters. In the standard header files, size_t is defined to be 32bits. If this is changed to 64bits, and all programs using time counters are recompiled, we are set to go for another approximately 280,000,000,000 years... at which point we'd have to switch to 128bits (if the human race still exists and unices are still used).
----
This, just like "Even day" (February 2, 2000), is utterly meaningless. Instead of writing this article, why didn't you just say, "Who cares?" What's more important about the UNIX timestamp is when it runs out of space for a long integer to store. THAT will be interesting. Y2K all over again.
Will we still be using Oracle in 2.7 Millenia ?
:)
4712-12-31 Tue - Limit of Oracle?
Weird thing is I have a horrible feeling it might still be around
Winton
So let me get this straight the mightiest country in the world The United States of America is lame?
yes it is. all this talk about how much freedom you're supposed have when in fact it's not that free at all.things like softdrugs and prostitution are illegal, you'll probably say that it's not good for you to use softdrugs or not moral to go to a hooker, but at least I made that decision for myself instead of that the government made it for me.
I have the freedom to choose and set my own standards, you don't.
---
Probably Holland.
yepBeen there once, very interesting place. Friendly people and travelling is really easy due to the excellent mass transportation systems. I dunno why Amtrak and friends even bother anymore :(
actually, they're working on making the trains run better according to schedule.nowadays you can even get a refund if a train is delayed too long
---
that's also all what i wanted to say
Lucky dog... .NL yesterday and I allready miss it..
.NL ...
I just got back from
Had the run the gauntlet of US fascist pigs at customs. and then back to the choking air of Houston.
I miss the electric trams, the polite citizens, the multi-cultural visitors and the tolerant society of
Starman97@Gmail.com (bring it on spammers)
Why don't we move to a 64 bit timestamp?
My primary occupation is to build ASP applications in PHP - and the 32 bit timestamp is a decided limiting factor.
So we move to a 64-bit epoch - I don't see any particular problem doing so NOW... but in 37 years it just might be a REAL PROBLEM.
Why isn't this done? Why don't the kernel developers for Linux just do this, using a slightly different system call? (xtime() instead of time() or whatever)
A compatability function could SO EASILY be added now, and then software can be written that takes advantage of the extended API...
I have no problem with your religion until you decide it's reason to deprive others of the truth.
The Java date subsystem was apparently designed by a short sighted individual. Who would use a signed number to represent the date? They could go twice as far into the future if they used it as an unsigned number. After all, time didn't exist before 1970 so it's perfectly okay to just represent it as an unsigned number.
Sorry, but seeing bad programming practices like this just make be a little upset especially for a supposedly robust system such as Java.
Things you think are in the Constitution, but are not.
Wooooooooooooooooooh!
987654321!
WoooooooooooooooooH!
The only true currency in this bankrupt world is what we share with someone else when we're uncool. -Crowe
First (Graphical) Post!
MSIE: The world's most standards-complaint web browser.
I'm quite the bit curious, Has anyone actually attempted to see what the appocolypse might look like from a computers perspective?
Perhaps when I have a play machine hanging around I'll `date -s 'Tue Jan 19 03:14:00 GMT 2038'` to watch the rollover or possably Jan 20 2038 to see what breaks after that date?
It would be interesting to experiment such a disaster. Who knows maybe the rollover of one machine will causes a catalistic affect over a net (That would be cool eh? An Epoch worm? Or virus that does nothing but set your time past 2038?)
Possably a site archiving success or fail of such programs or systems would be an intersting addition to the ever-growing-yet-needlessly-viewed bookmark folder.
"Remember, who is the boss of you!"
> SELECT * FROM brain_cells WHERE synaptic_rate > 0
0 row returned
Imagine the supply issues with tens of miillions of troops!
Yeah, and only 1.2 billion people providing the production base. I suppose the US should be afraid of Canada's smaller army because of the "supply issues" of supporting a large army.
--
--
Mod up a post Rob doesn't like and you'll never mod again
According to the article, the highest possible date that can be counted to is 2**1E80. According to my (possibly flawed) calculations on my trusty HP VPN Scientific calculator here, that 'Final Date' will occur approximately sometime in the year 15,616. Supposedly after this, is the total number of known particles in the universe, hence no dates beyond this number can exist. Interesting!.... Very very interesting!- -----
-----------------------------------
-----------------------------------------
Perversely greped and groped by PowerPenguin
and the yound blondes in pigtails ...
.
123456790 :-)
I wrote a program which used the current time *2 as a 10-byte IV. When the time rolls over, that program will fail. Why was I doing such a dirty trick? I was trying to squeeze every last byte out of an RC4-based cryptosystem written in Perl.
; for$x(@t=@s=0..255){S
The bug was spotted by co-author Jeff Allen, who suggested this fix: *invert* the time with "~". That should keep going until the 32-bit clock runs out in 2038.
#!/usr/bin/perl -0777i_MUNITION,see_http://ciphersaber.gurus.com
(pop)?read STDIN,$p,10:print$p= ~time;sub S{@s[$x,$y]=@s[$y,$x]}sub
Q{$s[($_[0]+=$_[1])%=@s]}@k=unpack'C*',(pop).$p
Q$y,$k[$x%@k]+Q$x}$x=$y=0;print map{chr($_^Q S Q$y,Q$x,1)}unpack'C*',<>
I've had to introduce a space in ";for" to get around Slashdot's random space adding system (bah!) - the minimal version is on my Web pages. Incidentally, the ~ fix didn't save a character, because we still had to leave a space between the = and the ~ since =~ is a distinct Perl token...
--
Xenu loves you!
In the future we _will_ be able to go back in time! My Linux Box says so! Check it out:
[jebediah@Tabernacle jebediah]$ perl -MPOSIX -le 'print ctime(999999999)'
Sat Sep 8 18:46:39 2001
[jebediah@Tabernacle jebediah]$ perl -MPOSIX -le 'print ctime(1000000000)'
Sat Sep 8 18:46:40 2001
[jebediah@Tabernacle jebediah]$ perl -MPOSIX -le 'print ctime(2000000000)'
Tue May 17 20:33:20 2033
[jebediah@Tabernacle jebediah]$ perl -MPOSIX -le 'print ctime(3000000000)'
Fri Dec 13 12:45:52 1901
I urge anybody who wants to go back to a simpler time to start using Linux and to grasp there compuret tightly when the sacred time comes around!
Everytime you look at porn a devil gets their horns.
It was actually Dec 23rd 2012, the end of the last of the 5 ages of the Maya. Should be interesting to see, apparently the end of each of the last ages correspond with a cycle of maximum sunspot activity. The story being that this will flip the magnetic poles of the earth and cause all sorts of problems.
Yes, I guess it would.
2001-09-09? Hey, that's my 1-year wedding anniversary!
Silly boy, you're assuming that the "Windows and Mac communities" will be anything more that anthropological museum exhibits in the '30s (right next to australopithicus using a twirling stick to start a fire).
Tiller's Rule: Never use a word in written form that you've only heard and never read. You will end up looking foolish.
At least the lowest 30 bits.
:)
(time_t)(0x3fffffff) = 2004/01/10 13:37:03 GMT
At which point we will be halfway to the 2038 bug.
You can never equivocate too much.
/* You can declare a variable with the same name
* as a type if you want. */
#include <time.h>
#include <stdio.h>
int main(void){
time_t time_t=987654321;
printf("%s\n",ctime(&time_t));
return 0;
}
Good point. I keep assuming that everyone uses bash instead of sh. It's creeping in though, Sun's Solaris has been using it as a shell replacement in 2.8 in some configurations.
I tried using test, and the test worked on linux (as expected) and, thankfully, also in Ultrix. So maybe it's not that bad...
Black holes are where the Matrix raised SIGFPE
hey... i was just thinking... i am not religious at all, so I am going on heresay...
1. isn't 999999999 equivilant to about 30 years, which is how old Jesus was when he was crucified?
2. i find it strange that 000000001 starts at damn near Christmas time in 1971 and 999999999 ends at damn near Easter time 30 years later...
3. does this mean that GOD uses the unix date/time system for all of his scheduling??
-- Betting on the survival of the media industry is a serious risk. I advise investing elsewhere.
Whee!