The History of UNIX and Linux
UNIX is an operating system developed in the late 1960s.
Computers of that era were large machines operated via multiple terminals.
These terminals were simple screen and keyboard combinations without their own CPU.
Until the mid-1960s, all data was processed using punched cards.
This led to the development of time-sharing systems capable of loading multiple programs simultaneously.
By allocating processor time in time slices, these systems enabled the concurrent execution of multiple tasks.
This approach is still referred to as multitasking today.
Using multiple terminals on a single computer also allowed different users to work simultaneously on the same machine.
These systems are known as multiuser systems.
Different permissions could also be assigned to individual users.
At Bell Laboratories, efforts were made to develop such a multiuser system.
The project was called MULTICS (Multiplexed Information and Computing System).
However, the project was eventually discontinued.
In 1969, Ken Thompson, a Bell Labs employee, continued the project.
He wanted to port a game he had developed on a punched card computer to a DEC PDP/7.
To do this, he had to develop a small multitasking system.
Together with Dennis Ritchie, they designed a hierarchical file system, memory management for the computer’s four KWords, and process and time-sharing management.
The system could be used simultaneously by two users.
Brian Kernighan jokingly referred to this system as UNICS (Uniplexed Information and Computing System).
Due to the computer’s limited four KWords, it was abbreviated to UNIX.
The name UNIX remained in use even later.
By 1971, the system was already being used internally at Bell Labs.
It was then ported to a much more powerful PDP/11.
Since UNIX was written in assembly language at the time, this required a significant amount of work.
To make the system easier to port, the UNIX developers sought a high-level programming language suitable for the task.
Dennis Ritchie developed a new high-level language inspired by the B programming language and called it C.
By 1973, most of UNIX was written in C.
In 1974, Bell Labs made the C-based source code freely available to universities, sparking rapid dissemination of UNIX.
From this point onward, various versions of UNIX emerged.
The University of California, Berkeley, developed its own UNIX version, later known as BSD UNIX (Berkeley Software Distribution).
Today, there are multiple BSD distributions, including FreeBSD, OpenBSD, and NetBSD, among others.
In 1979, UNIX was represented by AT&T as the successor to Bell Labs, coinciding with the first available BSD release.
In the early 1970s, software was freely exchanged among developers in source code form.
However, by the late 1970s and early 1980s, companies began releasing software under restrictive licenses and keeping source code secret.
UNIX source code was also licensed and distributed by AT&T from this point onward.
To ensure software could still be freely exchanged and developed, Richard Stallman founded the GNU Project in 1983.
He chose the recursive acronym GNU (GNU's Not UNIX) as the project’s name.
The GNU Project aimed to create a free UNIX-like operating system.
By the late 1980s, in addition to BSD, several UNIX distributions existed.
Sun Microsystems, which had long offered SunOS as a pure BSD variant, developed a new System V-based operating system called Solaris.
In 1989, the UNIX version System V Release 4 was introduced, aiming to unify developments from various distributions.
Even today, most providers adhere to these standards.
In 1991, Finnish student Linus Torvalds began developing a free UNIX system based on the Minix operating system.
He used the GNU C Compiler, which ensured high portability.
Torvalds released the system under the principles of the GNU Project.
The free distribution of Linux brought significant revitalization to the UNIX world.
Linux was further developed by numerous programmers, resulting in a wide variety of distributions over time.
These operating systems consist of the Linux kernel and GNU software.
Consequently, they are often referred to as GNU/Linux.
Today, a large proportion of servers worldwide run a UNIX or LINUX operating system.