8 Jan 2024
What is Linux?
Table of Contents
Introduction
Linux is the 4th most used operating system in the world. It is used with almost 3% of desktops, 90% of supercomputers, and 71% of mobiles - Android is Linux-based, so you might already have a device running Linux! It was originally started by one person, Linus Torvalds, in 1991, and has constantly been evolving ever since.
Humble Beginnings
In September 1991, Linus Torvalds, a computer science student at the University of Helsinki in Finland, released the foundations of the Linux operating system.
Torvalds was inspired by the MINIX and Unix operating systems introduced to him during his course.
The Unix philosophy is evident in Linux:
- Write programs that do one thing and do it well.
- Write programs to work together.
- Write programs to handle text streams, because that is a universal interface.
He initially released the operating system as a command-line interface for very specific system architecture, as that was what was available to him at the time.
“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” … “I’d like any feedback on things people like/dislike in minix, as my OS resembles it somewhat”
Torvalds’ post (25 August 1991) announcing his system on comp.os.minix newsgroup.
A community focused on open-source development around Linux grew in the years that followed.
The original Linux 1.0 release had 176,000 lines of code in March 1994. As of 2021, this number has gone up to over 20,000,000. This includes developers from all over the world reporting bugs and implementing code additions to improve the OS.
Today, the Linux kernel and many of Linux’s distributions are maintained using Git, which Linus Torvalds also developed!
What is a distribution?
The core of Linux is the Linux kernel, which handles the management of hardware resources such as the processor and memory. However one kernel does not make a complete operating system. The Linux kernel is usually combined with a graphical interface and other software such as libraries, applications, and drivers to create a Linux distribution.
In 1992, a GUI system was first added by the development community, and by 1993, the first commercial distribution, Slackware, was released.
Slackware was the first, and now there are over 600 Linux distributions, all with their own development communities and tailored quirks.
Here are a few Linux distributions:
Debian
- This is one of the longest-running (since 1993), collaborative (1000+ developers), bug-free and stable distributions of Linux.
- Many distros use Debian as a base.
- Includes over 30,000 software packages.
- It updates every 2 to 3 years, so it can be outdated, but at the same time is very stable.
Ubuntu
- Ubuntu is based on Debian’s experimental branch.
- It is maintained by Canonical owned by millionaire Mark Shuttleworth.
- It has an installation wizard and an increased amount of drivers available compared to Debian.
Linux Mint
- Linux Mint is based on Ubuntu.
- It is aimed at being even more user-friendly with custom tools developed for users who are migrating from other operating systems
Arch Linux
- Arch Linux is an “install only what you need” distribution.
- It is aimed at more experienced users to customize their installation.
- It includes a powerful package manager for installing applications called Pacman.
Fedora
- Fedora is also aimed at experienced users.
- It is used heavily in server environments.
Note: Different distributions can have different desktop environments. A distribution, such as Arch Linux, can be customised to run GNOME, KDE, Cinnamon, Budgie and others.
Why use Linux?
Here’s the biggest one: it’s free. A full-fledged, stable operating system for no cost whatsoever.
You can install Linux on as many computers as you want for free without seeing the bane of life itself:
Linux is also more secure than its competition, being far less vulnerable to malware.
All the different flavours of Linux also mean that it can be tailored to an individual or company’s use case and preferred working style. I decided to try Ubuntu by just installing it on a USB first and moving about the operating system. From here, one can choose to install the operating system fully or have a dual-boot setup with another OS like Windows. Having run Ubuntu on my old Acer laptop, I even noticed an increase in performance. The system was not bogged down in background processes from Windows, resulting in a much smoother experience.
Linux is highly relevant from a programming perspective too, with 47% of professional developers choosing it as their main OS. In my experience tools like gcc and python come pre-installed and have a huge amount of support. Further, the terminal experience is superior and the package manager helps install software reliably.
Why not use Linux?
Linux distributions can have a learning curve, both in installation and use. The screen of the terminal becomes your go-to place for troubleshooting, installing and setting up all kinds of tools and applications.
If this is new to a user, it can be daunting and overwhelming. Some distros like Ubuntu are easier to install, while some like Arch Linux require knowledge or a guide to fully set up.
Linux distributions are not guaranteed to support some hardware either. For example. the fingerprint sensor on my Acer laptop was not supported on Ubuntu. My Lenovo Thinkpad’s trackpoint sensor was also unsupported out of the box with Debian until I went out of my way to set it up. Some software like Microsoft Word is also unavailable, but alternatives like LibreOffice exist.
Conclusion
In my experience in term 1 of UCL Computer Science, running Linux has meant that I can enjoy a more focused and streamlined operating system, leading to higher efficiency in my programming, day-to-day work and higher Tetris scores. There is not much hand-holding with many aspects of the Linux system, but I believe this challenge can be a great learning experience and improve productivity. I would recommend it to someone who relates to the weaknesses of other OSes and is interested in the strengths of Linux, and anyone interested in broadening their computing knowledge.