1.1. History of UNIX
We mentioned that Linux is a type of UNIX. Although Linux did not develop directly from an
existing UNIX, the fact that it implements common UNIX standards makes the history of UNIX
relevant to our discussion.
MULTiplexed Information and Computing Service (MULTICS), which is considered the precursor of
the UNIX operating systems, came about from a joint venture between MIT, Bell Laboratories, and
the General Electric Company (GEC), which was involved in the computer-manufacturing business
at that time. The development of MULTICS was born of the desire to introduce a machine to
support numerous timesharing users. At the time of this joint venture in 1965, operating systems,
although capable of multiprogramming (timesharing between jobs), were batch systems that
supported only a single user. The response time between a user submitting a job and getting back
the output was in the order of hours. The goal behind MULTICS was to create an operating system
that allowed multiuser timesharing that provided each user access to his own terminal.
Although Bell Labs and General Electric eventually abandoned the project, MULTICS eventually ran
in production settings in numerous places.
UNIX development began with the porting of a stripped-down version of MULTICS in an effort to
develop an operating system to run in the PDP-7 minicomputer that would support a new
filesystem. The new filesystem was the first version of the UNIX filesystem. This operating system,
developed by Ken Thompson, supported two users and had a command interpreter and programs
that allowed file manipulation for the new filesystem. In 1970, UNIX was ported to the PDP-11 and
updated to support more users. This was technically the first edition of UNIX.
In 1973, for the release of the fourth edition of UNIX, Ken Thompson and Dennis Ritchie rewrote
UNIX in C (a language then recently developed by Ritchie). This moved the operating system
away from pure assembly and opened the doors to the portability of the operating system. Take a
moment to consider the pivotal nature of this decision. Until then, operating systems were entirely
entrenched with the system's architecture specifications because assembly language is extremely
particular and not easily ported to other architectures. The rewrite of UNIX in C was the first step
toward a more portable (and readable) operating system, a step that contributed to UNIX's
sudden rise in popularity.
1974 marked the beginning of a boost in popularity of UNIX among universities. Academics began
to collaborate with the UNIX systems group at Bell Laboratories to produce the fifth edition with
many new innovations. This version was available free of cost and with source code to universities
for educational purposes. In 1979, after many innovations, code cleanups, and an effort to
improve portability, the seventh edition (V7) of the UNIX operating system came about. This
version contained a C compiler and a command interpreter known as the Bourne shell.
The 1980s brought the advent of the personal computer. The workstation was now within the
reach of businesses and universities. A number of UNIX variants were then developed from the
seventh edition. These include Berkley UNIX (BSD), which was developed at the University of
California at Berkley, and the AT&T UNIX System III and System V. Each version was then
developed into other systems, such as NetBSD and OpenBSD (variants of BSD), and AIX (IBM's
variant of System V). In fact, all commercial variants of UNIX are derived from System V or BSD.
Linux was introduced in 1991 at a time when UNIX was extremely popular but not available for
the PC. The cost of UNIX was prohibitive and not really available to a user unless he was affiliated
with a university. Linux was first implemented as an extension of an operating system called Minix
(a small operating system written by Andrew Tanenbaum for educational purposes).
In the following years, the Linux kernel, combined with system software provided by the Free
Software Foundation's (FSF) GNU project, made Linux
[1]
develop into a sufficiently solid system
that attracted attention beyond the scope of the contributing hackers. In 1994, version 1.0 of