Hello and welcome to the first part of a new series – Vox does Linux! My name is Izzy and I hope to be your guide into the world of Linux. I have been a Linux user for around 5 years and although at first we had an off/on again relationship, it is now my OS of choice for my desktop PC. I make no claims to be an expert, but I hope to be able to show you Linux from the point of view of a fairly average user who also loves to game. In this series I introduce Linux and show some of the ways in which I use it, tweak it and have fun with it. I am always interested in new ways to use Linux, so please comment if you have anything to add! With that said, let’s start with What is Linux?
The GNU Project
An operating system is a set of components that interfaces between hardware (processors, RAM, keyboards etc.) and programs, such as Steam, Firefox or Microsoft Office. In the present day Operating Systems usually have a graphical user interface (GUI), for example your Windows desktop, although in the past command line or text based operating systems were the norm (MS-DOS, which I grew up on, for example). Operating systems which you are likely to see in the wild include Windows, OS X, iOS, Android and Linux.
Linux (aka GNU/Linux) is an operating system which is based on free and open-source software (FOSS). This means that most Linux distributions are completely free to download and use, and that anyone has access to the source code of the operating system, meaning that anyone can contribute to its development. The idea for this model is credited to Richard Stallman who was disgruntled with the way that software development was going, so founded the GNU project (which was intended to create a free and open source version of the popular UNIX software giving the recursive acronym GNU’s Not UNIX) and the Free Software Federation in the 1980s. He is also responsible for the creation of the GNU/GPL license, which governs a large portion of FOSS in various revisions.
The GNU logo – GNU is now in its thirtieth year
In the early years of computing, there was no such thing as the desktop computer. Computers were enormous things that filled entire rooms or even buildings and were interacted with through punch cards, tapes or similar media. Over time, support was added for multiple users who interacted with the computer using terminals. (In Fallout 3, for example, the desktop computers are normally terminals linked to different mainframes). Computers were so eye-wateringly expensive, needed huge amounts of space, and the enormous power consumption meant that they were mainly used by government entities. (Take a look at this beast for example http://www.old-computers.com/museum/computer.asp?st=1&c=1050)
Eventually, with the invention of the integrated circuit by Jack S Kilby in 1958, computers began to shrink, and started to see applications beyond the government. Personal computers, such as the Apple ][, Commodore 64 and even the venerable IBM 5150 – the first personal computer to be called a “PC” – appeared throughout the 70’s and 80’s, but in terms of raw computational power they still lagged far behind the mainframes. The software required for mainframes was also often painfully expensive.
In 1991 Linus Torvalds (then attending the University of Helsinki) encountered problems with the restrictive licensing agreements of the MINIX operating system (not all of the source code was made available) and decided to create his own operating system. This was a perfect storm of timing as personal computers had recently become powerful enough to become very interesting. This system was intended to be compatible with UNIX which at the time was a popular operating system, and upon which the MINIX system was based. Later into the development of what would become the Linux kernel, Torvalds incorporated GNU applications and released his creation under the GNU/GPL license. This usage of GNU components is why some would argue that Linux should properly be called “GNU/Linux”, to acknowledge the contribution of the GNU project. However, you are more likely to see it referred to in the wild simply as “Linux”, so that is the term I will use in this series.
So, what is Linux, anyway?
Linux is modular in design, so the kernel (development of which is still overseen by Linus Torvalds) is only one part of the package. From the “backbone” of the kernel, different modules are hung such as the bootloader which starts the OS up, user interfaces such as your desktop and resource libraries such as the C standard library which are used by applications and for OS functions. Upon these foundations, applications are compiled and built such as Firefox, Libre Office, Steam and all the other awesome things Linux has going on. The choice of modules is what differentiates different distributions of Linux, although most can be made broadly compatible with each other by adding new modules. Because of the choice of modules, you have broad groups of distributions, such as Debian based, Gentoo based, Pacman based, RPM based, that then have their own derivatives. So, for example, I use Linux Mint, which is based on Ubuntu, which is in turn based on Debian.
For the end user, the choice of distributions can be overwhelming – Distrowatch.com, which indicates the popularity of different distributions by monitoring download volume, lists over 250 different distributions of Linux and BSD (which is the result of the UNIX-like operating system that the GNU foundation produced). In future articles, I plan on discussing the broad categories of Linux, then taking a look at individual distributions to see what they have to offer. For now though, the next few articles will focus on a beginners guide to Linux, focusing on Linux Mint as this is not only a popular distribution (it currently ranks at number one on Distrowatch), but the one that I am most familiar with.
This has been a whirlwind tour of Linux background with a little pinch of computing history. The brevity of the article necessitated leaving some parts out that, whilst important, would have meant I could have filled an entire book or two. I have also enormously simplified some parts in the name of keeping it simple. If I have over-simplified (or am just plain wrong) I would hugely appreciate you letting me know in the comments. However, I hope that you found it interesting, and I hope that you will join me for Vox does Linux part 2 – A guided tour of my setup. If you are interested in the hardware that powers the madness, you can see my setup here.
Thanks for reading,
Initial research was done on Wikipedia
Any errors in the article are my own