Unix:The
Unix operating system was conceived and implemented in 1969 at
AT&T's Bell Laboratories in the
United States by
Ken Thompson,
Dennis Ritchie,
Douglas McIlroy, and
Joe Ossanna. Unix derived its name as a joke and reference to an experimental OS that was slow and ineffective called
MULTICS. It was first released in 1971 and was initially entirely written in
assembly language, a common practice at the time. Later, in a key pioneering approach in 1973, Unix was re-written in the programming language
C by
Dennis Ritchie, (with exceptions to the kernel and I/O). The availability of an operating system written in a high-level language allowed easier
portability to different computer platforms and, with a legal glitch forcing AT&T to license the operating system's source code, Unix quickly grew and became widely adopted by academic institutions and businesses.
GNU:
The
GNU Project, started in 1983 by
Richard Stallman, had the goal of creating a "complete Unix-compatible software system" composed entirely of
free software. Work began in 1984. Later, in 1985,
Stallman created the
Free Software Foundation and wrote the
GNU General Public License (GNU
GPL) in 1989. By the early 1990s, many of the programs required in an operating system (such as libraries,
compilers,
text editors, a
Unix shell, and a windowing system) were completed, although low-level elements such as
device drivers,
daemons, and the
kernel were stalled and incomplete. Linus Torvalds has said that if the GNU kernel had been available at the time (1991), he would not have decided to write his own.
MINIX:MINIX was an inexpensive minimal
Unix-like operating system, designed for education in computer science, written by
Andrew S. Tanenbaum. As of
version 3, MINIX is
free and redesigned also for “serious” use.
In 1991 while attending the
University of Helsinki, Torvalds, curious about the workings of operating system kernels and frustrated by the licensing of
MINIX limiting it to educational use only (which prevented any use in a commercial fashion) began to work on his own kernel which eventually became the
Linux kernel.
Torvalds began the development of Linux on
MINIX and applications written for
MINIX were also used under Linux. Later Linux matured and it became possible for Linux to be developed under itself. Also GNU applications replaced all
MINIX ones because, with code from the GNU system freely available, it was advantageous if this could be used with the fledgling OS. Code licensed under the GNU
GPL can be used in other projects, so long as they also are released under the same or a compatible license. In order to make the Linux kernel compatible with the components from the GNU Project, Torvalds initiated a switch from his original license (which prohibited commercial redistribution) to the GNU
GPL Developers worked to integrate GNU components with Linux to make a fully functional and free operating system.