As a version of Unix, the history of Linux naturally begins with Unix. The story begins in the
late 1960s, when a concerted effort to develop new operating system techniques occurred. In
1968, a consortium of researchers from General Electric, AT&T Bell Laboratories, and the
Massachusetts Institute of Technology carried out a special operating system research project
called MULTICS (the Multiplexed Information and Computing Service). MULTICS
incorporated many new concepts in multitasking, file management, and user interaction.
In 1969, Ken Thompson, Dennis Ritchie, and the researchers at AT&T Bell Laboratories
developed the Unix operating system, incorporating many of the features of the MULTICS
research project. They tailored the system for the needs of a research environment, designing
it to run on minicomputers. From its inception, Unix was an affordable and efficient multiuser
and multitasking operating system.
The Unix system became popular at Bell Labs as more and more researchers started
using the system. In 1973, Dennis Ritchie collaborated with Ken Thompson to rewrite the
programming code for the Unix system in the C programming language. Unix gradually
grew from one person’s tailored design to a standard software product distributed by
many different vendors, such as Novell and IBM. Initially, Unix was treated as a research
product. The first versions of Unix were distributed free to the computer science
departments of many noted universities. Throughout the 1970s, Bell Labs began issuing
official versions of Unix and licensing the systems to different users. One of these users
was the computer science department of the University of California, Berkeley. Berkeley
added many new features to the system that later became standard. In 1975 Berkeley
released its own version of Unix, known by its distribution arm, Berkeley Software
Distribution (BSD). This BSD version of Unix became a major contender to the AT&T Bell
Labs version. AT&T developed several research versions of Unix, and in 1983 it released
the first commercial version, called System 3. This was later followed by System V, which
became a supported commercial software product.
At the same time, the BSD version of Unix was developing through several releases. In
the late 1970s, BSD Unix became the basis of a research project by the Department of
Defense’s Advanced Research Projects Agency (DARPA). As a result, in 1983, Berkeley
released a powerful version of Unix called BSD release 4.2. This release included
sophisticated file management as well as networking features based on Internet network
protocols—the same protocols now used for the Internet. BSD release 4.2 was widely
distributed and adopted by many vendors, such as Sun Microsystems.
In the mid-1980s, two competing standards emerged, one based on the AT&T version of
Unix and the other based on the BSD version. AT&T’s Unix System Laboratories developed
System V release 4. Several other companies, such as IBM and Hewlett-Packard, established
the Open Software Foundation (OSF) to create their own standard version of Unix. Two
commercial standard versions of Unix existed then—the OSF version and System V release 4.
Originally designed specifically for Intel-based PCs, Linux started out at the University of
Helsinki as a personal project of a computer science student named Linus Torvalds. At that
time, students were making use of a program called Minix, which highlighted different
Unix features. Minix was created by Professor Andrew Tanenbaum and widely distributed
over the Internet to students around the world. Linus’s intention was to create an effective
PC version of Unix for Minix users. It was named Linux, and in 1991, Linus released version
0.11. Linux was widely distributed over the Internet, and in the following years, other
programmers refined and added to it, incorporating most of the applications and features
now found in standard Unix systems. All the major window managers have been ported to
Linux. Linux has all the networking tools, such as FTP support, web browsers, and the
whole range of network services such as email, the domain name service, and dynamic host
configuration, along with FTP, web, and print servers. It also has a full set of program
development utilities, such as C++ compilers and debuggers. Given all its features, the
Linux operating system remains small, stable, and fast. In its simplest format, Linux can run
effectively on only 2MB of memory.
Although Linux has developed in the free and open environment of the Internet, it adheres
to official Unix standards. Because of the proliferation of Unix versions in the previous decades,
the Institute of Electrical and Electronics Engineers (IEEE) developed an independent Unix
standard for the American National Standards Institute (ANSI). This new ANSI-standard Unix
is called the Portable Operating System Interface for Computer Environments (POSIX). The
standard defines how a Unix-like system needs to operate, specifying details such as system
calls and interfaces. POSIX defines a universal standard to which all Unix versions must
adhere. Most popular versions of Unix are now POSIX-compliant. Linux was developed from
the beginning according to the POSIX standard. Linux also adheres to the Linux file system
hierarchy standard (FHS), which specifies the location of files and directories in the Linux file
structure. See pathname.com/fhs for more details.
Linux development is now overseen by The Linux Foundation (linux-foundation.org),
which is a merger of The Free Standards Group and Open Source Development Labs
(OSDL). This is the group that Linus Torvalds works with to develop new Linux versions.
Actual Linux kernels are released at kernel.org.