Thursday, August 27, 2009
40 years of Unix
Given such permanent change, anything that survives for more than one generation of processors deserves a nod.
Think then what the Unix operating system deserves because in August 2009, it celebrates its 40th anniversary. And it has been in use every year of those four decades and today is getting more attention than ever before.
Work on Unix began at Bell Labs after AT&T, (which owned the lab), MIT and GE pulled the plug on an ambitious project to create an operating system called Multics.
The idea was to make better use of the resources of mainframe computers and have them serve many people at the same time.
"With Multics they tried to have a much more versatile and flexible operating system, and it failed miserably," said Dr Peter Salus, author of the definitive history of Unix's early years.
Time well spent
The cancellation meant that two of the researchers assigned to the project, Ken Thompson and Dennis Ritchie, had a lot of time on their hands. Frustrated by the size and complexity of Multics but not its aims of making computers more flexible and interactive, they decided to try and finish the work - albeit on a much smaller scale.
The commitment was helped by the fact that in August 1969, Ken Thompson's wife took their new baby to see relatives on the West Coast. She was due to be gone for a month and Thompson decided to use his time constructively - by writing the core of what became Unix.
He allocated one week each to the four core components of operating system, shell, editor and assembler. It was during that time and after as the growing team got the operating system running on a DEC computer known as a PDP-7 that Unix came into being.
The name was reportedly coined by Brian Kernighan - a lover of puns who wanted Unics to stand in contrast to its forebear Multics.
The team got Unix running well on the PDP7 and soon it had a long list of commands it could carry out. The syntax of many of those commands, such as chdir and cat, are still in use 40 years on. Along with it came the C programming language.
But, said Dr Salus, it wasn't just the programming that was important about Unix - the philosophy behind it was vital too.
"Unix was created to solve a few problems," said Dr Salus, "the most important of which was to have something that was much more compact than the operating systems that were current at that time which ran on the dinosaurs of the computer age."
Back in the early 1970s, computers were still huge and typically overseen by men in white coats who jealously guarded access to the machines. The idea of users directly interacting with the machine was downright revolutionary.
"It got us away from the total control that businesses like IBM and DEC had over us," said Dr Salus.
Word about Unix spread and people liked what they heard.
"Once it had jumped out of the lab and out of AT&T it caught fire among the academic community," Dr Salus told the BBC. What helped this grassroots movement was AT&T's willingness to give the software away for free.
"The fact that its code was adaptable to other types of machinery, in large and small versions meant that it could become an operating system that did more than just run on your proprietary machine," said Dr Salus.
In May 1975 it got another boost by becoming the chosen operating system for the internet. The decision to back it is laid out in the then-nascent Internet Engineering Task Force's document RFC 681, which notes that Unix "presents several interesting capabilities" for those looking to use it on the net.
It didn't stop there. Unix was adapted for use on any and every computer from mainframes to desktops. While it is true that it did languish in the 1980s and 90s as corporations scrapped over whose version was definitive, the rise of the web has given it new life.
The wars are over and the Unix specification is looked after by the Open Group - an industry body set up to police what is done in the operating system's name.
Now Unix, in a variety of guises, is everywhere. Most of the net runs on Unix-based servers and the Unix philosophy heavily influenced the open source software movements and the creation of the Linux desktop OS. Windows runs the communication stack created for Unix. Apple's OS X is broadly based on Unix and it is possible to dig into that software and find text remarkably similar to that first written by Dennis Ritchie in 1971.
"The really nice part is the flexibility and adaptability," said Dr Salus, explaining why it is so widespread and how its ethic fits with a world at home with the web.
"Unix is the best screwdriver ever built," said Dr Salus.