UNIX as an operating system originated at Bell Labs, as an outgrowth of the decision of Bell Labs to stop participating in the Multics project. As mentioned earlier, its name is a pun on Multics. Bell Labs was contributing the file system to Multics, and this is what Ken Thompson coded on the PDP-7 in 1969, along with a few other things. UNIX began.
This first version of UNIX was largely written in assembler, a daunting task. Dennis Ritchie and Brian Kernighan, also at Bell Labs, began development of the C programming language about this time. Fairly early on, increasing portions of the UNIX kernel and subsidiary programs were written in C, to the point where very little assembler is needed in modern UNIX operating systems.
In order to keep UNIX going, support for applications involving text processing were developed. Bell labs wasn't in the OS development business, but its employees did publish a large number of papers.
For a while, UNIX was shared among a fairly small group of people. In about 1979, the University of California (Berkeley) got a copy of the source code, and started to modify it greatly. It (the kernel source code) was used as instruction material for both graduate and undergraduate courses.
This was the beginning of a great split in UNIX. Some sources of UNIX sprung from the AT&T Bell Labs side of things, and some came from the Berkeley (or BSD) side of things. Commercial companies developed their own versions of UNIX, either largely based upon AT&T code, or on Berkeley code. Of course, they had to add their own proprietary extentions. And so, we have seen the development of HP-UX, IRIX, SunOS, Solaris, AIX, Xenix, .... All are UNIX, but all a little bit different from each other.
Portability in the UNIX world, meant the ability to compile source code of an application (or program) on different UNIX platforms. Early on, all that was needed was to define whether a particular UNIX was in the AT&T side, or the Berkeley side. But all the proprietary extentions soon made UNIX source code a mess.
In the mid 1980's, an attempt to bring some order to the
UNIX universe was made, under the guise of the AT&T System V
Revision 4 definition.
It wasn't really very successful.
The IEEE got involved about this point, and decided to write
a series of interface definitions, based loosely on the AT&T
System V Revision 4 UNIX kernel, which were called
POSIX
.
And this effort begat such (ill fated) things as
OpenVMS (which apparently still exists).
But part of the spinoff of trying to get a standard UNIX,
was the hobby project of Linus Torvalds which became
Linux
.
The first official version of Linux was released by Linux on
October 5, 1991.
And based on the installation base, it appears that Linux
has a chance of becoming the first ``standard'' UNIX.
And of course, the Berkeley element is still present, this
time in the guise of the Net-BSD, Free-BSD and Open-BSD
projects.
Linux came from a disagreement of sorts between Linus Torvalds, and his Instructor (Andrew Tanenbaum) in a course on MINIX. MINIX was a UNIX clone meant to run on CPU's as ``small'' as the 8088, which has no support for memory management in hardware. Linux was originally meant for computers having an Intel 80386 (or better) CPU, and some support for memory management in hardware. One current project is to try to get Linux running on 8086 or 8088 class computers.
Linux, and the 3 BSD projects are OpenSource.
That is to say, that they are copyrighted in such a manner
as to make the production of a proprietary UNIX based on
them difficult.
Practically speaking, it means that source code to these
operating systems is free.
That all you have to do is to have Internet access, and an
address, and you too can download a copy.
But for most of us, what we need to do is to somehow acquire
a copy of one of these operating systems on a CD-ROM, and
install it on our machines from that.
And if all we are interested in is a cheap CD-ROM with a
base bones OS on it, they can be got for as little as
$1.99 (US dollars).
Usually though, we want the comfort of having some kind of
support.
And for that we should buy a distribution from a commercial
vendor.
Typically these commercially supported versions of Linux are
in the neighborhood of $50 to $100
.
The more popular ones (at present) are: Red Hat, SuSE,
Debian, Caldera and Slackware.
However, the number of distributions at the time of this
writing for Linux is somewhere around $70.