Thursday, October 16, 2008

Slackware/Linux/Unix (pre-)history (Part 1: The origins)

In the beginning there was...

CTSS, the Compatible Time-Sharing System, developed at the Massachusetts Institute of Technology (MIT) Computation Center and first demonstrated in 1961. It had some interesting features like:
  • inter-user messaging (what we would call 'e-mail' nowadays)
  • a program called RUNCOM, that could execute several commands put together in a file - like modern-day shell scripts
  • RUNOFF, probably the first text-formatting software

In 1964 MIT, together with Bell Labs an General Electric (GE) started developing Multics (Multiplexed Information and Computing Service) . GE manufactured mainframe computers in those days for which they needed an Operating System. It was conceived as a modular system, where new resources (memory, disk storage) could be added as necessary. Every file had an Access Control List to share or secure its contents amongst users.
Some novelties of Multics, now considered normal, were:
  • dynamic linking
  • daemons
  • a hierarchical file system
  • symbolic links

In 1969 AT&T / Bell Labs decided to leave the project and in 1970 GE's computer business was sold to Honeywell.

A Honeywell H6180 at the MIT Information Processing Center

In Europe Multics was distributed by Groupe Bull, where I had my first contact with computers. I don't remember what year this happened, probably around 1975.

The birth of UNIX

Ken Thompson, who had worked through Bell Labs on Multics, had written a computer game called Space Travel for this operating system. Unsatisfied with the performance, he rewrote the program in assembly language for a Digital Equipment Corporation PDP-7, with help from Dennis Ritchie.

Ken Thompson and Dennis Ritchie

Together they teamed up with several other developers to write an operating system for the PDP-7. It is obvious that they were influenced my Multics, but they focused on the philosophy of Keep It Small & Simple, what ultimately became part of the famous Unix Philosophy.
They developed a new file system, a command line interpreter (CLI) and several utility programs for their new OS.
Brian Kernighan, who later co-wrote the first book on the C programming language with Dennis Ritchie, invented the name Unics, as a pun on Multics. According to some stories, after hearing too many comments about "Eunuchs", the spelling was changed to Unix.
On the PDP-7 it eventually supported two simultaneous users.

To get financial support from Bell Labs, Thompson and Ritchie promised to add support for text-processing in Unix. They received a PDP-11 machine to continue their work and write roff and a text-editor. roff was based on the runoff text-formatter from Multics and before that CTSS, and survives until today as the GNU version groff.
In 1971 The UNIX Programmer's Manual was published using troff, an evolution of roff for typesetters.

Thomson & Ritchie working on the PDP-11

To be continued...

Labels: , , ,


Post a Comment

Subscribe to Post Comments [Atom]

<< Home