Linux Basics: What is Linux?

Linux is a powerful operating system that runs on many modern devices. Taking the time to learn it will add an invaluable tool into your arsenal.

Linux Basics: What is Linux?
Photo by Lukas / Unsplash

Contents


  1. Introduction
  2. What Is An Operating System?
  3. What Is A Kernel?
  4. What Is A Shell?
  5. Benefits Of Linux

Introduction


Linux... is probably my favourite thing ever. If you've ever watched an action film, then you know the main hero is one who gets all the action. But we all know that they'd have failed several times over if it wasn't for their 'guy-in-the-chair'.

You know who I'm talking about. The master hacker! The guy/girl who can make magic happen using nothing but a computer! But let's face it, fiction can be a little... unrealistic. Most of these characters are wayyyyyy too smart! Even when you know what they're saying,  the still don't make any sense!

Figure 1: WTF?!

But I'm willing to bet that, at some point during their journey to become that "smart", they mastered the art of using a Linux command-line interface.

If you've ever wanted to be the guy/girl then, this is a great place to start!

These Linuxing series will help you gain an understanding of linux fundamentals. But before we get our feet wet, we should at least know a little about what we're working with. I'll try and explain things from the ground up.

What is An Operating System?


An operating system (OS) is the most important software that runs on a computer. It acts as the interface between the computer hardware and the user or other software. Simply put, an operating system is what makes a computer work.

When you start your computer, a built-in software, or firmware, known as Basic Input/Output System (BIOS) runs some initial inspections before relinquishing control to the first bootable, software it can find.

Figure 2: Booting Up The Operating System

The operating system manages the computer's resources, such as the processor, memory, storage, and input/output devices. It also provides a platform for running other software applications, such as web browsers, office suites, and games.

What Is A Kernel?


A kernel is the central component of an operating system that manages the system's resources and provides basic services to other parts of the operating system. It acts as a bridge between hardware and software, and its primary responsibilities include:

  1. Memory allocation
  2. Processor Management
  3. Device Management
  4. File System Management
  5. Networking

The kernel is the first part of the operating system to start when the computer is powered on, and it runs in privileged mode with direct access to the computer's hardware.

Privileges refer to how much control something has over a system. A user with high privileges are capable of controlling more of the system than a user with low privilege. I will go into this more in the Linux System Administration post.

The rest of the operating system runs in user mode and communicates with the kernel through system calls.

Figure 3: User Layer To Hardware Layer

In summary, the kernel is the central component of an operating system that provides the basic services and management of the system's resources, acting as a bridge between hardware and software.

What Is A Shell?


A shell is a software the bridges the gap between the user and the kernel, allowing you to directly send commands to the kernel, effectively bypassing the application/software layer.

Figure 4: User To Shell

Depending on you privilege level, this can give you an unprecedented level of control over your system. Windows has an alternative, known as PowerShell, which requires its own series because it uses a different logic to Linux shells.

Benefits of Linux


  1. Open-source: The Linux code is available for anyone to view and modify. This allows for a large community of developers to contribute to its development and improve the OS.
  2. Lower cost: Linux is free to use and distribute, while Windows requires a license. This makes Linux a more affordable option for businesses and individuals.
  3. Highly configurable: Linux is highly configurable, and users can customise the OS to suit their specific needs. You can build your own Linux machine from nothing but a command-line, or search through the various "flavours" of Linux online, some look incredible!
  4. Lower system requirements: Linux is known for being more lightweight than Windows and can run on older hardware with lower specifications. This makes it a good option for older or less powerful computers.
  5. Highly secure: Linux is less prone to malware and viruses, and has built-in security features that can help protect against cyber threats.
  6. Large software repository: Linux has a large repository of software available, from office applications to hacker tools. There are also many user-made packages available.
  7. Efficient use of resources: Linux is known for its efficiency in utilising system resources, which can result in better performance and longer battery life on laptops.

The only major drawback I can think of is the learning curve. It's definitely not for the average user due to its complexities. Yes, it affords you a greater level of control over your system but that control comes with risk.

If you're not careful, you can cause some irreparable damage to your systems.

My aim is to help you avoid such a fate, and show you what an asset having Linux knowledge in your arsenal can be.

Click here, for the next post where you will learn how to navigate the command line.