Saving Unix Heritage, One Kernel At a Time 169
coondoggie writes "In this, its 40th year of operating system life, some Unix stalwarts are trying to resurrect its past. That is, they are taking on the unenviable and difficult job of restoring to their former glory old Unix software artifacts such as early Unix kernels, compilers and other important historical source code pieces.
In a paper to be presented at next week's Usenix show, Warren Toomey of the Bond School of IT is expected to detail restoration work being done on four key Unix software artifacts all from the early 1970s — Nsys, 1st edition Unix kernel, 1st and 2nd edition binaries and early C compilers.
In his paper, Toomey states that while the history of Unix has been well-documented, there was a time when the actual artifacts of early Unix development were in danger of being lost forever."
Usenix attendees..... (Score:4, Funny)
In a paper to be presented at next week's Usenix show, Warren Toomey of the Bond School of IT is expected to detail restoration work being done on four key Unix software artifacts all from the early 1970s
Afterwards atendees will be ushered to the dining hall for a fine serving of raisins, prune juice, and Oxygen treatments.
St. John's ambulance will also be on site to assist with attendees suffering with various age related ailments such as broken hips and arthritis.
Re: (Score:2)
Re: (Score:2)
I have a special gizmo on my Go Go Elite Traveler PLUS to hold my EeePC!
And a bag for my depends..
Re: (Score:2)
Hey, I was at Usenix (LISA) in 2001 (age 19), and it was awesome. I wish I could go again, but it doesn't look likely in the near future.
Worse is better (Score:4, Interesting)
Despite what many a slashdot crowd might think, UNIX isn't exactly an elixir from the Gods. UNIX, Microsoft Windows and Intel x86 are living proofs that the best / most innovative technology doesn't necessarily have to win. Check Out: http://www.dreamsongs.com/WorseIsBetter.html.
Re:Worse is better (Score:4, Insightful)
The fact that MS-DOS outsold the Amiga and Atari ST is proof that best doesn't always win. The x86 is a great example as well. The 68k chip was a much better CPU than the 8088,8086, and even the 80286. Only when the 386 hit the market did Intel really have a CPU that wasn't a freaking nightmare.
Another example is PHP. Good grief $A[1]==$A['1'], that is just wrong.
PHP, Windows, x86, and so much of what we live with are all examples of good enough. Not great but good enough.
Re: (Score:3, Interesting)
The fact that MS-DOS outsold the Amiga and Atari ST is proof that best doesn't always win. The x86 is a great example as well. The 68k chip was a much better CPU than the 8088,8086, and even the 80286.
The 68000 didn't have a built-in MMU. You could run an OS with process isolation (a requirement for a safe multi-user OS) on the 80286. You could not do that with a 68000 (unless you added a separate MMU; the 68881 maybe?).
Re: (Score:3, Interesting)
The memory protection on the 286 was terrible. It still used segments and wasn't a flat address space.
I think the the 68010 came out around the time of 286 and you could add a real mmu that supported paging and had a flat address space. Also the 68020 came out during the time of the 286 so you could make the jump to true 32 bit.
Of course the vast majority of 286s where used to run DOS so it's memory protection just wasn't that important. BTW the 68881 was an FPU the Motorola 68841 or 68851 where the MMUs.
Re: (Score:2)
Actually the 80286 could do full memory protection. The pages were in effect 64K in size. There was certainly some strange stuff so that you were encouraged to keep using the same page, but at the time memory sizes were such that you really wanted to limit how many 64K pages were swapped in.
The problem was that the 8086 version of MSDOS preset the segments to overlap 16 bytes apart, and lots of programs assumed this. If you changed it so the paging was useful then no MSDOS programs could run, which pretty m
Re: (Score:2)
The memory protection on the 286 was terrible. It still used segments and wasn't a flat address space.
I've never been a fan of segments either.
I think the the 68010 came out around the time of 286 and you could add a real mmu that supported paging and had a flat address space. Also the 68020 came out during the time of the 286 so you could make the jump to true 32 bit.
Sure, hardware makers could choose to add an MMU to their 68010/68020 based machines.
Of course the vast majority of 286s where used to run DOS so it's memory protection just wasn't that important.
I was lucky, I got to use QNX (running on 80286) and Microport (sp?) Unix (also running on 80286) -- both in protected mode, of course. It's a shame most 80286s ran DOS in real mode...
BTW the 68881 was an FPU the Motorola 68841 or 68851 where the MMUs.
Thanks for the correction!
Re: (Score:3, Interesting)
Memory protection was not at all a design factor for DOS or even early versions of Windows. Memory protection didn't really take off in the PC world until the 80386, which was after the 68020 was being used to run UNIX.
The two competing families didn't release new CPUs at the same time, so it's difficult to s
Re: (Score:2)
Another example is PHP. Good grief $A[1]==$A['1'], that is just wrong.
So why is that such a bad thing? Granted you can make the "unclean, unclean, UNCLEAN!" argument, but why is that the worst of php's atrocities?
Re: (Score:2)
$space_var='THIS IS A STUPID VARIABLE WITH SPACES IN ITS NAME';
$$space_var = "this is some content";
print $$space_var;
print_r($GLOBALS);
Which puts a nice variable named $"THIS IS A STUPID VARIABLE WITH SPACES IN ITS NAME" into your global namespace.
Re: (Score:2)
Another example is PHP. Good grief $A[1]==$A['1'], that is just wrong.
I think $A[1] === $A['1'] will do what you're wanting it to do. What's wrong with having the language smart enough to know that 1 and '1' are the same thing? It can tell the difference between an int and a char, it's just usually not useful.
Cheap and massively produced (Score:2)
Actually, what made x86 and Windows dominant, was the PC Clone market :
A huge market with lots of companies competing by producing even cheaper version of the same product, following (approximately) the same standard.
Mass production makes the product widely available, and cheap.
Thus PCs got easier to get for much less money, even if they where shittier than the better, but more expensive and more scarce Amiga computers.
The 68k is a whole different story. It actually enjoyed a good success, become almost omn
Worse loses at the end (Score:2)
I wonder if you are fooled by lack of Desktop popularity of Linux since I see UNIX, by exact meaning along with certificates is approaching 10% desktop share now and basically sets the destination on mobile scene. That is OS X for you. Should Apple do the most interesting thing ever and gather Unix 03 certificate for a mobile device too?
If we look to matter as *NIX, MS is actually struggling to reach top spot spending billions of dollars to overtake Linux and FreeBSD _dominance_ on server scene. Enterprise
Re: (Score:2)
This may be true, but Unix / Posix is the result of decades of research for such things as security and administration on real software systems. Much of it contains features requested by admins in hostile environments trying to run and protect their systems. It may not be new and innovative, but its model works for me. I haven't seen anything better from a practical standpoint. Obviously, this doesn't mean there can't be other types of systems. There is always more than one way of doing things.
What, no documentation? (Score:3, Funny)
From TFA: "documentation is missing or incomplete, source code is missing leaving only the binary executables, or conversely the source exists but the compilation tools to reconstruct the executables are missing."
Sounds like any number of projects I've had the pleasure of working on over the years.
SIMH (Score:5, Interesting)
SIMH [trailing-edge.com] is a hardware emulator for a lot of the machines Unix ran on (PDP-8, PDP-11, etc.). They also have some original Unix versions [trailing-edge.com] along with some other software for the other hardware they support.
I have run Unix V5 on a SIMH-based PDP-11, and it worked well, though it was strange to realize how fast it was running, in emulation, on a machine 1/16 its original size (Mac laptop).
Re: (Score:2)
I just set up a SIMH VAX machine last night running 4.3BSD-quasijarus, which is one purist's project to continue maintaining "pure" BSD Unix.
The project: http://ifctfvax.harhan.org/Quasijarus/ [harhan.org]
How to get a SIMH VM set up: http://www.retrocomputinggeek.com/retrowiki/Install4.3BSDQuasijarus/ [retrocomputinggeek.com]
Re: (Score:2)
Ummm...
Unix never ran on a PDP-8, as far as I know.
For DEC systems, it ran on PDP-7, PDP-11, VAX, and Alpha. The original PDP-7 version, and the early PDP-11 versions are lost to the mists of time.
Unix as an "Idea Mine" (Score:4, Insightful)
Very often the technically 'best' implementation doesn't win and I'd like to see those stories from inside Unix. For me, that's a more interesting angle than just version/feature stories.
how about curses and text games? (Score:4, Interesting)
rogue, sail, wump, search (you have crashed into a planet), battlestar (in the closet is a kingly robe), mazewars, that mazewars-like curses game who's name escapes me, with a variety of weapons (satchel bomb... oooo...) that had destructable maze walls.
There are a variety of Rogue-like games out there that have been ported to current platforms, but the other ones, especially sail, search and mazewars, I haven't seen in years and years. These games were arguably part of our early Unix heritage because they enticed people to get a login and explore the OS, and for many of us (myself included) they were our motivation learn how to write termcaps for obscure terminals and emulators (the acid test was if Rogue would render correctly), learn programming to fix and enhance the games, and earn root access to do installs and fix permission issues.
Multi-user Unix games like sail and mazewars helped spread the Unix word because we were always trying to entice others to get a login so we could play with them. People with early PC experience couldn't even conceive of multi-user games.
Re:how about curses and text games? (Score:4, Informative)
There are a variety of Rogue-like games out there that have been ported to current platforms, but the other ones, especially sail, search and mazewars, I haven't seen in years and years.
sail, at least, is part of the "bsdgames" package on Debian.
Re: (Score:2)
adventure, arithmetic, atc, backgammon, battlestar, bcd, boggle, caesar, canfield, countmail, cribbage, dab, go-fish, gomoku, hack, hangman, hunt, mille, monop, morse, number, pig, phantasia, pom, ppt, primes, quiz, random, rain, robots, rot13, sail, snake, tetris, trek, wargames, worm, worms, wump, wtf.
rogue is in bsdgames-nonfree.
Re: (Score:2)
Most of the games mentioned by OP are included in Debian.
It was "mazewars" and "search" I wasn't too sure about... Never played 'em and couldn't find 'em. But I saw the post mention sail - I used to play Sail back in college, so I knew that one wasn't a "lost treasure"...
Re: (Score:2)
rogue, sail, wump, search (you have crashed into a planet), battlestar (in the closet is a kingly robe), mazewars, that mazewars-like curses game who's name escapes me, with a variety of weapons (satchel bomb... oooo...) that had destructable maze walls.
You're thinking of Hunt. Multi-player fragfest goodness! It had pretty decent performance on 1200 baud (even 300 baud) too.
Hunt was also a great way to train your fingers to use the hjkl movement keys!
Perfect diversion for those with hoarding disorder (Score:2)
If you must obsessively collect something, it might as well be bits. Every year or two, you can squeeze twice as much stuff into the same space. That makes it less likely that you'll be found trapped, filthy and emaciated, beneath a collapsed pile of your hoarded treasures.
This is the first time in human history that true exponential hoarding has become not only possible, but practical.
Re: (Score:2)
I was kind of thinking along the same lines. One of the problems with computers is that you CAN save every variation, every single edit of every file, everything, and it just seems to flow into a recursive save everything mindset that never ends and never saves enough.
Has anyone bothered saving the paper TTY output from the compiling (or worse -- line editing!) of these original UNIX items? What about that?
Ugh.
Easy to use Windows SIMH packages (Score:3, Interesting)
Oh boy (Score:4, Funny)
Someone will trot out a copy of the Morris worm and we can relive history all over again.
paper and program (Score:3, Informative)
Paper here: http://www.usenix.org/events/usenix09/tech/full_papers/toomey/toomey.pdf [usenix.org]
Program here: http://www.usenix.org/events/usenix09/tech/ [usenix.org]
Yes, I work for USENIX.
Re: (Score:3, Informative)
The paper is free next week when it becomes published.
In contrast to the early pre NT Windows specimens (Score:2)
...which the CDC considers harmful to humans and has placed the two last known remaining copies at strategically placed bunkers in different parts of the US.
keep regressing (Score:3, Informative)
Re:Why? (Score:5, Interesting)
Re:Why? (Score:4, Interesting)
Re: (Score:3, Insightful)
Tron?
He fights for the users.
Re: (Score:2, Informative)
Tron is the most used OS in the world.
It was invented in Japan and is an embedded device OS.
Re:Why? (Score:5, Informative)
Every modern OS can trace back to Unix in some way or form.
VMS? Windows? ReactOS? Plan9? QNX? Tron? zOS?
I wouldn't call VMS modern...
Windows: take a look in c:\windows\system32\drivers\etc\ some time. See any Unix style influences?
The others I have no clue about.
Re: (Score:2)
Are those Unix influences, or influences from an OS predating Unix? i.e. the same source that caused Unix to adopt that style? You make it sound like there was nothing before Unix.
Re: (Score:3, Informative)
Are those Unix influences, or influences from an OS predating Unix? i.e. the same source that caused Unix to adopt that style? You make it sound like there was nothing before Unix.
Almost nothing. Unix was created on The Second Day.
Re: (Score:2)
Re: (Score:2)
Re: (Score:3, Informative)
Re:Why? (Score:4, Informative)
VMS came after Unix so calling it a not very modern OS is kind of odd. X-Windows was never supposed to be Unix specific in fact there was even a version for DeskView way back when.
WindowsNT really owes more to VMS than Unix the chief architect came from Digital. Tron also came after Unix as well. zOS is still an extremely important OS so just because it only runs on one CPU I wouldn't just thow it away as well. As to finding some Unix in zOS frankly you would probably find more zOS in modern Unix than the other way around. IBM really did pretty much invent everything that Bell Labs did not and they where their first.
I really am not fond of the the write up about QNX. It is Unix like in someways and shares an API with it. but QNX is a micro kernel RTOS.
And lets be very honest. Unix came from Multics. Every OS has built on and taken ideas from other OS's. None of them is the pure root source.
I am a big Linux fan but I often wonder if we are too willing to keep Unix as our foundation. BeOS was a clean new OS and while I have never used it wonder if it may not be better than Linux and WindowsNT. It did some amazing things back in the day.
Re: (Score:2)
Z/OS runs Unix as a service.
Re: (Score:2)
UNIX compatibility and being UNIX are two different things.
Re:Why? (Score:4, Informative)
Re: (Score:2)
The NT filenames were copied from Unix, not VMS. So was all the stream I/O and the socket api, and the libc library. Well they were really copied from MSDOS, but that had already been modified extensively to resemble Unix so NT had to resemble Unix as well.
Some aspects of process management were from VMS but I suspect there was just as much variety between Unix's as there was between NT and some Unix here.
Re:Why? (VMS) (Score:2, Informative)
Re: (Score:2)
DOS' shell was inspired by Unix; Windows NT's shell was inspired by VMS, and Microsoft indeed hired numerous VMS engineers to write it. Windows XP was the last version of NT to use BSD's TCP stack; a new one was written for vista to integrate IPv6. It reintroduced numerous pathetic vulnerabilities (like land and teardrop) during the Vista RC process, making it clear that Microsoft does not or at least did not do any bounds checking in the brand spanking new TCP stack.
Re: (Score:2)
No, the DOS shell (if you mean command.com or cmd.exe) was inspired by the CP/M shell, which was based on RSX style systems. It was modified in some crude ways to look more like a Unix shell.
The NT shell was identical to the MSDOS one so it certainly could not be inspired somehow differently.
Calling the windowing system the "shell" is an interesting different use of the term, but any such shell could not be considered to be derived from either Unix or VMS as they had no such thing.
Re: (Score:2)
The NT shell was identical to the MSDOS one so it certainly could not be inspired somehow differently.
Yeah, I meant kernel there, correction fail. Sorry.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
VMS? Windows? ReactOS?
Just look at the way they use sockets. Internet is a Unix feature.
Plan9?
It was created to fix Unix, so obviously it has a LOT of unix heritage.
Re: (Score:2)
Re:Why? (Score:5, Insightful)
Those that don't learn UNIX are doomed to reinvent it. Poorly.
Careful... (Score:5, Funny)
Those that don't learn UNIX are doomed to reinvent it. Poorly.
One may interpret that saying as someone trying to incite a Linux / BSD war. We lost good men from both sides the last time that happened...
Re: (Score:2)
One may interpret that saying as someone trying to incite a Linux / BSD war. We lost good men from both sides the last time that happened...
Why can't we all just get along? And unite against our common enemy, OSX.
(bet you thought I was going to say Windows).
Re:Why? (Score:4, Funny)
Re: (Score:2)
Re: (Score:2)
History is history (Score:3, Insightful)
I love the smell of analogies in the morning! (Score:2)
Is there really any useful purpose to decoding Sumerian clay tablets, or analysing dockyard records from the 18th Century? One of the things that differentiates civilised human beings from all other living things on this planet is that we study history and preserve things from the past. Perhaps it just doesn't need justification, it is part of what we are.
Or to restoring old cars...
Re: (Score:2)
Restoring old cars saves energy and is environmentally friendly. I bought a used 1992 F250 needing work (I just finished replacing the mechanical fuel injection pump, and making a custom intake for the turbo kit, yaargh) instead of buying a new truck because I could get more truck for less money and save energy and did I mention it's a diesel with 20 mpg on the freeway even though it's a 3/4 ton 4x4?
Ford claims they're going to make flex-fuel engines to replace diesels. Fuckheads. E85 is a terrible boondogg
Re: (Score:3, Funny)
Restoring old cars saves energy and is environmentally friendly. I bought a used 1992 F250 needing work
No no no no no... I mean old cars...
Re: (Score:2)
I bought a used 1992 F250 needing work
No no no no no... I mean old cars...
Uh, I did say it was a Ford, right?
Re: (Score:2)
Re:Why? Why not? (Score:2)
Is there really any useful purpose to be served by dredging this up? Don't these guys have anything better to do?
I say, "Why not?" It's interesting. That's enough.
Re: (Score:2, Funny)
Is there really any useful purpose to be served by dredging this up? Don't these guys have anything better to do?
yeah! FUCK HISTORY!
Re: (Score:2)
Yeah, totally. We should like burn the Wright Flyer and close the Smithsonian too. They're like boring and old and stuff. Then we can go get some Brawndo.
You really are a tarded aren't you? Thought about being a pilot?
Re: (Score:3, Informative)
No. There is nothing useful to be learned from history.
Close your eyes, put the pedal to the metal, and assume that whatever you're doing, it's the right thing, and that nobody has ever tried it before.
Re: (Score:3, Funny)
Only if you know it is going in a straight line.
Re:Why? (Score:4, Insightful)
Obviously, history is more complicated, but idea is the same.
Re:Why? (Score:5, Funny)
I studied this and found that June 4th, 2014 will be the start of the year of the Linux Desktop.
Re:Why? (Score:5, Funny)
Re: (Score:2)
You don't need a straight line to find its logic.
Re: (Score:2)
Principles, ie: the Unix Philosophy, is more important that where it's been and trying to predict where its going.
Re:Why? (Score:5, Insightful)
Old source code gives us ideas, like looking at the design philosophy behind the code, and the ultimate operation of the software. These are actually *priceless* artifacts, and since they are mostly digital ( reserive the right for first pun... they are 'Digital' ), the study and the disemination of the early code is of extrodinary value to coders and software architects.
Of course its also invaluable to have their nemisises Multics and VMS alos preserved. I personally got an enourmous amount of respect for K&R reading the source code for the kernel (the V4), and the proto compiler. K&R, and the linux/GNU write well, wereas their MS counterparts wirte pretty crappy stuff. I would also venture to guess that the code alone can serve as an example of how to write code.
I will look forward to taking a detailed 'History of the UNIX Kernel' class in the near future.
WHAT'S WRONG WITH THE SLASHCODE?!?! (Score:3, Interesting)
OK seriously, the above post is pretty screwed up in Firefox. I've got floating tab bars or something all over the post as well as throughout the thread and the tt font is coming out at 16 point or in some very large font.
These css screw ups have been happening a lot lately. Then again I am using the older (and better) comment system.
Re: (Score:2)
Like this? http://i58.photobucket.com/albums/g269/bob-appleyard/slashbug.png [photobucket.com]
I tried submitting a bug report, but it placed too many obstacles in my path, and broke down before it could go anywhere.
Messed up.
Re: (Score:2)
Re: (Score:3, Insightful)
Old source code gives us ideas,
Like "WTF did they do here?!", "Why did they do it THAT way?!" and "That has got to be the ugliest kludge I've ever seen!"
Of course its also invaluable to have their nemisises Multics and VMS alos preserved.
Multics was hardly a 'nemesis' of Unix. Multics was basically dead when Unix arrived; its death inspired Ken Thompson and company to work on Unix.
Re: (Score:2)
You're kidding, right? We're talking about the kernel that doesn't bother with unit tests or actual release cycles, and which thinks that "our users find our bugs" is a good replacement for a QA process?
Look, I like Linux and use it a lot, but to say that they "write well" and Microsoft "write pretty crappy stuff" is re
Re: (Score:2)
So while I would encourage new programmers to learn from the programming t
Re: (Score:3, Interesting)
At that time, lots of languages had short variable names. It wasn't seen as all that much of a big deal until later.
It was around this time, BTW, that I thought getting a 24x80 synchronous terminal on my desk was cool. (Synchronous = sends and receives in sort of a batch mode, asynchronous = character by character.)
Re: (Score:2)
At some point in the past, evolutions has taken the path that lead to the Dodo. Could you have understood where that evolutionary path was going, given that initial mutation?
Re: (Score:2)
The wheel does need to be reinvented from time to time. Otherwise it just gets too square.
Re: (Score:2)
And here I thought that it was hip to be square.
Re: (Score:2, Insightful)
Re:Which "Unix" are they talking about? (Score:4, Informative)
Original flavor. All the stuff talked about in this article comes from before UNIX split into its hundreds of variants. In fact, these are so early that they come from before UNIX escaped out of Bell Labs. UNIX didn't start splitting into different flavors until about Versions 4 and 5.
Re: (Score:2)
You can often tell that an operating system is in the Unix family if it has a name that is a combination of the letters U, I, and X.
That's a little unfair to the users of BSD based operating systems like FreeBSD, OpenBSD, NetBSD, Mac OSX and other variants.
Re: (Score:2)
You can often tell that an operating system is in the Unix family if it has a name that is a combination of the letters U, I, and X.
That's a little unfair to the users of BSD based operating systems like FreeBSD, OpenBSD, NetBSD, Mac OSX and other variants.
MacOSX has an X. "B" is just two small sideways U's and an I. "D" is a wide sideways U and an I
Re: (Score:2)
Re: (Score:2)
No, those are stairs. Food is :.
Re: (Score:2)
Re: (Score:3, Funny)
Re: (Score:2)
If you RTFA, they point out that a lot of this stuff comes from 'packrats'. From a preservation standpoint, it's important to get this stuff into a university library where someone can find it 20 years from now, rather than relying on underground FTP repositories and the like.