Linux: A journey through time

krishnaprasad k
7 min readApr 2, 2021

Some histories of Linux begin with this message posted by Linus Torvalds to the comp.os.minix newsgroup on August 25,1991.

Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since April, and is starting to get ready. I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).

I've currently ported bash(1.08) and gcc(1.40), and things seem to work.
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want. Any suggestions
are welcome, but I won't promise I'll implement them :-)

Linus (torvalds@kruuna.helsinki.fi)

Minix was a UNIX-like operating system that ran on PCs in early 1990s. Like Minix, Linux was a clone of the UNIX Operating System. With a few exception such as Microsoft Windows, most modern computer systems (including Mac OS X and Linux) were derived from UNIX Operating systems, created originally by AT&T.

To truly appreciate how a free operating system could have been modelled after a proprietary systems from AT&T Bell Laboratories, it helps to understand the culture in which UNIX was created and the chain of events that made the essence of UNIX possible to reproduce today.

Free-flowing culture at Bell Labs

From the very beginning itself UNIX was created and nurtured in a communal environment. Its creation was not driven by market needs but by a desire to overcome obstacles to producing programs. AT&T which originally owned UNIX trademark , eventually made UNIX into a commercial product, but by that time much of the code that made UNIX special had fallen into public domain.

During early 1980s AT&T didn’t had to think much about competition. It had a luxury of funding pure research projects. The mecca of such projects was Bell Laboratories . After a project called multics failed in around 1969, Bell Labs employees Ken Thompson and Dennis Ritchie set of their own to create an Operating System that would provide an improved environment for software development.

Dennis Ritchie (Standing) with Ken Thompson Working

The foundation of UNIX was set with several key elements.

1- The UNIX filesystem — Included a structure that allowed levels of sub directories (looks like folders inside folders) hence methods of accessing disks,tapes and other devices were greatly simplified.

2- Input/output redirection — Early UNIX system also included input redirection and pipes. right arrow key(>) to send output to a file , pipes(|) to send output of one command to another command, for example below command outputs contents of a file and then sort the output.

cat file1 | sort

3-Portability — By having device drivers(represented by files in file system tress), UNIX could present an interface to application in such a way that the programs didn’t have to know the details of the underlying hardware. To later port UNIX developers had only to change the drivers.

To make portability a reality, a high level programming language was needed to implement the software needed. For that Brian Kernighan and Dennis Ritchie created the c programming language. In 1973, UNIX was rewritten in C. Today, C is still the primary language used to create the LINUX OS kernels.

If you are a Linux enthusiast and are interested in what features from early days of Linux have survived an interesting read is Dennis Ritchie’s reprint of the first UNIX programmer’s manual.

Commercialised UNIX

As a result of AT&T’s monopoly of the telephone system, the US Government was concerned that an unrestricted AT&T might dominate the computer industry. Because of this AT&T was restricted from selling computers directly to customers, UNIX source code was licensed for universities for a nominal fee.

In 1982 AT&T was split up into AT&T and seven baby bell companies. Companies that later would become Qwest, Verizon and Alcatel-Lucent.

Berkeley Software Distributions

In 1975, UNIX V6 became the first version of UNIX available from outside Bell Labs. This was created at University of California at Berkeley, it was named Berkeley Software Distribution(BSD).

In later years BSD and Bell Labs version started flowing in separate directions. BSD continued in share-the code manner whereas AT&T steered towards commercialisation. With this aim AT&T formed a new UNIX Laboratories.By 1984 AT&T was ready to sell UNIX.

UNIX Laboratory and commercialisation

The UNIX Laboratory is considered as a jewel that couldn’t find a way to make profit, it’s name changed several times. It is best remembered by the name UNIX System Laboratories(USL). After the split up of AT&T, many companies started to fear that AT&T would monopolise computing industry. To calm down fears of these companies such as IBM, AT&T would ensure certain commitments to ensure a level of playing field.

  • source code only — Instead of boxed up set,it would provide source code so that each companies would port UNIX to it’s own equipment.
  • Published Interfaces —AT&T would implement certain standards such as Portable Operating System Interface(POSIX), UNIX System V Interface Definition(SVID). UNIX vendors could use these to create compliant UNIX Systems.

By the time USL started creating products for end users,Microsoft Windows would already have a firm grasp of desktop market,adding to that no application programs were available with Unixware. Other companies started benefiting with UNIX running on dumb terminals Sun Microsystems was selling a lot of UNIX workstations. As UNIX began to take it’s toll on it’s open source contribution,Law suits were filed to protect UNIX source code. In 1984 this restrictive UNIX gave birth to an organisation which would lead a path to Linux free software foundation.

GNU: Transition to freedom

Richard Stallman

In 1984 Richard M Stallman started the GNU project by a phrase GNU is Not UNIX. GNU was intending to become a UNIX OS that could be freely distributed.

Over time free software has been mostly replaced by the term open source software. The term “free software” is preferred by the free software foundation,while open software is promoted by the open source initiative. To accomodate both camps some would use Free and Open Source Software(FOSS) instead.A major principle of FOSS is as though you have freedom to use the software you also have the responsibility to make improvements to the code so that others can use it. Every one in the community can benefit from your work as you have benefitted from others.

To clearly define how open source software should be handled, the GNU would pubish GNU Public License or GPL

Comparison between different free and open source licences

Berkeley Software Distributions losses steam

By the late 1980s develpers at UC Berkeley has realised that they have rewritten most of the source code of the original UNIX Operating System. By 1989 UC Berkeley distributed it’s own source code as Net/ and later in 1991 as Net/2. As UC Berkeley was proceeding with their own OS AT&T hit yhem with a law suit in 1992. Ultimately the law suit was dropped in 1994 when Novell bought UNIX System laboratories(USL) from AT&T in 1994. But the confusion at that period was ripe for a college student from Finland who was working on his own kernel.

Today there are three major BSD versions available FreeBSD,NetBSD,OpenBSD. OpenBSD is fanatically secure. Many security minded individuals prefer BSD over Linux. The closed source nature of BSD leads to proprietary vendors such as Apple,Microsoft to use BSD.

Filling in the missing piece

Linus Torvalds

Linus started to work on Linux in 1991,while he was a student at Univarsity of Helsinki,Finland. He wanted to create UNIX-like kernel. He wanted to go beyond the Minix standards. By 1991 october 5, Linux 0.0.2 was released with mush of the original assembly code rewritten in the c programming language, which made it possible to start porting it to other machines. The Linux kernel was the last piece of code needed to complete a whole UNIX like Operating System under the GPL. So when people starting put together distributions the name Linux got stck and not not GNU.

Linux can be described as an pen source UNIX — like operating system that reflects a combination of SVID,POSIX and BSD compliance. The non-profit Open Source Development labs,renamed the Linux Foundation after merging with the Free Standards Group manages the direction of linux today. It’s sponsers include IBM,Red Hat,SUSE,Oracle,HP,Dell,Intel,Cisco

The KDE and GNOME desktop environments continuously improve Linux experience for casual users. Newer lightweight desktop environments such as Xface and LXDE now offer efficient alternatives that today bring Linux to thousands of users.

OSI Open Source Definition

Linux provides a platform that let developers to create applications they need. One of the watchdogs for the movement is Open Source Initiative(OSI).

OSI approved licenses

The end result of an open source project is more flexibility to grow and fewer boundaries in how it can be used. Numerous people look over open source projects for a higher quality software.

--

--

krishnaprasad k

Data engineer | Deep learning enthusiast | Back end developer |