The History and Evolution of Linux
There are no resources for this lesson.
Linux is used in a significant portion of modern digital infrastructure—from web servers to mobile phones and from personal computers to supercomputers. But how and why did it start? That is what we will answer in this lesson.
In 1991, a Finnish computer science student named Linus Torvalds decided to create a new, free operating system. Linus wrote a legendary message on the comp.os.minix newsgroup announcing his project and asking for help, which you can see below:
On Monday, August 26, 1991 at 2:12:08 AM UTC-4, Linus Benedict Torvalds wrote:
> Hello everybody out there using minix -Linus Torvalds
> 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 (torv...@kruuna.helsinki.fi)
> PS. Yes - it's free of any minix code, and it has a multi-threaded fs.
> It is NOT protable (uses 386 task switching etc), and it probably never
> will support anything other than AT-harddisks, as that's all I have :-(.
This project was initially intended as a personal endeavor to improve upon the existing MINIX operating system. Linus then released the source code under the GNU (pronounced "guh-noo.") General Public License, allowing other developers to modify and distribute the software freely, giving birth to what we now know as the Linux kernel.
Creation of UNIX
But why was Linux created in the first place? To understand this, we need to travel a little further back in time to the development of Unix and the GNU project. Unix was a robust and portable operating system created in the late 1960s, which saw widespread adoption and modification.
However, the proprietary nature of Unix led to a desire for a free and open-source alternative, leading to Richard Stallman's initiation of the GNU project in 1983.
The GNU Project
The GNU project aimed to develop a free and open-source Unix-like operating system, complete with essential software and tools. Its goal was to create an ecosystem where users could enjoy the benefits of a fully free and customizable computing environment. Key components of the GNU project included the GNU Compiler Collection (GCC), the GNU C Library (glibc), and various command-line utilities.
By the early 1990s, almost enough software was available to create a full operating system, but the GNU project lacked a viable kernel. The GNU project had been working on the Hurd kernel, which was designed to be the kernel for the GNU operating system. However, the development of the Hurd kernel faced challenges and progress was slower than anticipated. This gap led to an important collaboration in the open-source world.
Combining Linux / GNU
Linus's vision was to combine the Linux kernel with the GNU project to create a complete operating system. When Linus released Linux 0.01, the notes list GNU software that is required to run Linux:
Sadly, a kernel by itself gets you nowhere. To get a working system you need a shell, compilers, a library etc. These are separate parts and may be under a stricter (or even looser) copyright. Most of the tools used with linux are GNU software and are under the GNU copyleft. These tools aren't in the distribution - ask me (or GNU) for more info.Linus Torvalds
Open Source fueled Linux development
In February 1992, Torvalds released the Linux kernel 0.12 under the GNU General Public License. This move was a significant milestone as it opened the doors for the open-source community to develop and improve the Linux kernel collaboratively. This decision was instrumental in fueling Linux's growth.
Not only did developers contribute to the Linux Kernel, but they also played a vital role in creating Linux Distributions. A Linux Distribution is a complete operating system package with the Linux Kernel and various software applications and libraries. These distributions were created to make Linux more accessible by providing pre-configured and user-friendly environments.
Today, you can view the source code for the Linux kernel if you visit the official GitHub repository if you're curious about what that source code would look like. But be warned, the kernel now contains millions of lines of code!
Linux, once a personal project of a Finnish computer science student, has grown to become one of the most widely used operating systems in the world. Its flexibility and the fact that it is free and open source have made it a favorite among developers and enterprises alike. Its history is a testament to the power of collaboration and the open-source philosophy.
Here are some interesting facts about Linux:
- 47% of professional developers use Linux-based OS (Statista).
- 85% of smartphones run on Linux (Hayden James).
- The worldwide Linux market is projected to reach $15.64 billion by 2027 (Fortune Business Insights).
- Linux powers all top 500 supercomputers (Blackdown).
- There are over 600 active Linux distributions (Tecmint).
- SpaceX has completed 65 missions with Linux-supported systems.
- 90% of Hollywood special effects rely on Linux.
- 90% of cloud infrastructure operates on Linux.
- Linux is the choice for 96.3% of the top one million web servers (ZDNet).
Choosing what Linux distribution you should use is a very challenging decision. Here is a list of the four most popular Linux distributions according to W3Techs:
I would recommend you try the top three, since you can get open-source / free versions of these distributions, and CentOS (although being discontinued) and RedHat are VERY similar in nature.
See you in the next lecture!