Linux powers many devices such as Android smartphones, and smart home devices such as TVs, smart refrigerators, and Roku Devices, It also powers the world's top supercomputers and a majority of web servers.
Let's understand in detail what is Linux Operating system. What it contains and why it is used for.
What is Linux Operating system?
Linux is a free and open-source operating system (OS). It is based on the Linux kernel which is the main component of the Linux OS system.
Linux is actively developed and maintained by the community. By virtue of being open source, users can view its code, modify it and freely redistribute it without any license restrictions.
The Linux kernel interfaces between the computer's hardware and running processes and handles communication between the two. Excluding drivers, the kernel is a few megabytes when compiled. In a short answer, Linux is the kernel. It is first released on September 17, 1991, by Linus Torvalds.
All the Linux distributions ( kernel + userland including GNU tools) are based on the Linux kernel. There are many Linux distributions, and some of the major distributions include Ubuntu, Debian, Fedora, Rocky Linux, Fedora, and Red Hat Enterprise Linux (RHEL).
What Linux OS Contains
Let us now look under the hood and see what makes up a Linux system.
The Linux Operating system comprises the following core components:
Bootloader - The bootloader or boot manager is a small program that handles the booting process of a computer operating system. GRUB and GRUB2 are the most commonly used bootloaders.
Init system - The Init system is the first system that starts when the system is powered on. It bootstraps the user space and is in charge of all the other daemons. The most widely used init system is systemd which is found on modern Linux systems.
Kernel - The kernel is the core component of the Linux system. It is in charge of CPU and memory management, and managing other hardware resources.
Shell - The shell is the command-line interpreter that accepts inputs and performs tasks based on the commands executed.
System user space -System user space is the amount of memory that is allocated to running application software and drivers.
Daemons - These are services that run quietly in the background.
Graphical Server - This is commonly referred to as the X Server, or simply X. It is a utility that displays the graphical components on your screen.
Desktop environment - This refers to the graphical workspace that users interact with. We have already looked at a few examples of desktop environments such as GNOME, XFCE, MATE and Cinnamon.
Applications - Just like macOS and Windows, Linux offers an array of high-quality Linux applications out of the box such as LibreOffice, Mozilla FireFox, VLC media player and other GNU components & free software projects. In addition, most modern distributions provide AppStores from where you can search applications from thousands of apps and install them on your system.
Why is Linux OS used?
Having looked at some of the reasons why the Linux operating system is preferred over Windows, it's not hard to figure out why the adoption of Linux is on the rise by both desktop lovers and enterprises
Let us shine the spotlight on some of the compelling reasons why people use Linux.
Linux is Free
Linux is free including the Linux software packages that bundle with most Linux distributions. This is one of the major reasons that encourage the adoption of Linux by home users and small & medium enterprises.
Windows is proprietary and requires you to purchase a license in order to install and use it. On the other hand, macOS is only offered in Apple devices which, in most cases, are quite expensive.
With Linux, you just need to download your favorite distribution's ISO image and install Linux on your PC. In fact, some PCs come with Linux installed. This results in heavy budget-cutting for companies and users.
Linux is stable and reliable
Linux is considered one of the most stable operating systems. It's for this reason that most websites and applications are hosted on Linux.
Windows have instability issues ranging from sluggish performance to corrupt files which impact the performance of the system. In such cases, the solution is to reinstall Windows. In addition, windows OS is prone to developing errors and bugs which slows it down over time.
The same cannot be said about Linux. You can run Linux for months and even years without even needing to restart it. The filesystems in Linux are robust and help maintain the integrity of system components and files.
Linux is a secure and private system
Linux is generally less vulnerable to viruses and other malware that usually target Windows systems. In addition, the Linux permissions and ownership model makes it hard for programs and users to make changes to system configuration and settings unless they are logged in as root. In fact, most users do not log in as root, and therefore, they can only access other own files and folders unless granted root privileges.
To boost your system's security you can install ClamAV which is an open-source antivirus solution.
Linux is versatile
Linux, like other operating systems, is quite versatile. It provides an assortment of tools to help you accomplish various tasks. Out of the box, you get various open source software such as web browsers, programming tools, Office productivity software such as LibreOffice, multimedia programs such as VLC, graphic design applications such as GIMP, and Inkscape and so much more.
Linux also runs on a variety of hardware platforms including desktop PCs, servers, and even on embedded systems such as Raspberry Pi, routers, and so on.
High job prospects in the IT industry
Linux is an ideal platform for education and advancing your career in the IT industry. Learning how to work on the CLI opens doors for you to branch into other IT disciplines such as Cybersecurity, DevOps, and Cloud Computing.
Being a stable platform, Linux is also ideal for programming and you can comfortably code your applications in various programming languages such as:
And many other programming languages.
An abundance of Linux distributions
Linux provides hundreds of Linux distros to choose from each tailored for a different set of needs. For example, there are distributions suitable for beginners such as Linux Mint, and Ubuntu, some are ideal for hacking such as Kali Linux and Parrot OS, and some for enterprise workloads such as RHEL, and Rocky Linux, and on goes the list. Each of these distributions provides free software to enable you to get started out.
You can use Linux to revive old systems
Some Lightweight Linux distributions such as Slax, Puppy, and MX Linux can be installed on old computer hardware with low computational specifications such as 1 GB RAM and less than 1 GHz of processing speed.
Wide Linux Community
Linux boasts a wide community of experienced and committed developers who are always ready to provide support to users in case they run into issues. Popular distributions such as Ubuntu, Debian, and Fedora have vibrant online forums that provide answers to commonly encountered issues.
Ease of customization
Linux provides the flexibility needed to tweak your system to your desired state. If you are running a Linux distribution with a graphical interface, you can customize just about anything in the desktop environment. From the appearance of the desktop background, wallpapers, themes, and icons, to widgets and installing shell extensions to add to the functionality of the system.
Examples of Linux distributions
Some of the commonly used Linux distributions include:
- Linux Mint
- Pop OS
- Elementary OS
- MX Linux
Each of the distributions is unique and comes with its desktop environment. For example, Ubuntu and Fedora use GNOME, Elementary uses Pantheon and Linux Mint can either provide Cinnamon, MATE, or XFCE environment.
The following distributions are common in server environments:
- Red Hat Enterprise Linux
- SUSE Enterprise Linux
- Ubuntu server
- Rocky Linux
Linux GUI ( Graphical User Interface )
The Linux GUI (Graphical User Interface) is a graphical interface that allows computer users to interact with the system using the keyboard and mouse. The GUI is basically a desktop environment that enhances the user experience for users interacting with the system.
Key components of the GUI include:
Display manager - This is a utility that provides a graphical login to your Linux distribution.
File Manager - This is a graphical utility that allows users to access and manage files by allowing them to copy, move, paste and rename files and folders.
Widgets - These are small graphical applications that enhance the experience of using the Linux desktop. These include weather, clock, sticky notes, and calculator to mention a few.
System Tray - This is a component attached to the bottom panel or taskbar. It provides access to utilities such as power settings, network, and audio settings.
Icons - These are small graphical representations of an application, file, or folder.
Terminal emulator - This is a component that provides a command line interface to administer your system.
Text editor - This is an application that allows users to create and edit simple text and configuration files.
Common desktop environments include:
- KDE Plasma
Linux Command Line
The Linux command line is a text interface usually referred to as the terminal, shell or console. It provides users with an environment for administering the system through typing and running commands.
The Linux shell is the Linux command line interpreter. It accepts commands as input and executes programs based on that input. Popular Shells include
The GNU Bourne Again Shell ( /bin/bash )
The Z Shell ( /bin/zsh)
The C Shell ( /bin/csh )
The Korn Shell ( /bin/ksh )
Advantages of running Linux commands
The are several benefits of running commands on the command line or shell as opposed to relying on the graphical environment. Her are some of them:
- Less memory utilization - Using the CLI consumes less memory as compared to using the GUI. The graphical elements usually slow down the system leading to reduced performance.
- Fast performance - Since the CLI consumes less resources, it's considerably faster to use to run the system compared to the GUI which exerts pressure on the system resources.
- Greater flexibility - The command-line interface provides greater flexibility for running the system. It can be used to accomplish tasks that would otherwise be cumbersome or even impossible to do with a GUI.
- Scripting and automation - The CLI is the perfect tool for writing bash scripts and automating tasks. You can easily use command-line editors like nano and vim to write shell scripts and cron jobs for automating tasks, especially in a server environment.
Overall, the CLI is always preferred when running a Linux system. In fact, most servers run on a minimal Linux installation and not a GUI which would compromise the performance of the system.
History of Linux operating system
Let's go down memory lane and see the origin of Linux.
Linux was inspired by the Multics operating system (Multiplexed Information and Computing Service), an operating system that was under development in the 1960s in the AT&T labs under the leadership of two lead developers - Dennis Ritchie and Ken Thompson. The objective was to develop a multi-user and multi-tasking system for a minicomputer known as PDP-7.
Frustrated by the direction that Multics was taking, the lead developers shifted focus and developed a new operating system based on Multics called UNICS which would later change to UNIX. UNIX was a portable, and reliable system which could be installed on a wide range of hardware architectures.
UNIX OS rapidly grew in the 70s and 80s and was widely adopted among Academic institutions such as the University of California in Berkley. In 1987, Andrew S. Tanenbaum, an American-Dutch professor developed a UNIX-like system called MINIX, and the source code was made available to everyone. The downside to MINIX was that it could not be modified or redistributed.
In 1991, Linux Torvalds, who was then a Finnish student at the University of Helsinki in Finland, further worked on MINIX and developed the Linux kernel from MINIX. It was a pet project and the goal of Linus Torvalds was to create a UNIX-like system that could run on 386-based PCs.
In October 1991, Linus officially released the first version of Linux, version 0.02. The version of Linux was minimal and only provided some basic GNU tools such as the BASH shell, (Bourne Again Shell), and GCC compiler ( GNU C compiler). The primary focus was the kernel's development and not so much attention was given to issues such as documentation, distribution, and user support.
Over the years, Linux has grown in leaps and bounds to be one of the most formidable and reliable operating systems. Nowadays, there are different distributions of Linux tailored for different use cases. Most come with a graphical environment or X Windows system to provide a desktop environment that Linux users can use to interact with the system graphically. Some offer the option of downloading a minimal installation that provides a command line interface for user interaction. Popular Linux distributions include Linux Mint, Ubuntu, MX Linux, Fedora, and Debian.
That was a comprehensive introduction to the Linux Operating system. We trust you now have a clear picture of the operating system, its history, various Linux distributions, and its core components.