What is Linux?

In this blog you will learn what Linux is, who created it and who uses it.

What is Linux in a nutshell?

Linux is a free and open source operating system kernel, which is being used in various of computers, including server, desktops, smartphones, and IoT devices. On the September 17 in 1991, Linus Torvalds released the first version of the Linux kernel and a core feature of the Linux kernel was that it was free and open source. That means that everyone can see and modify the Linux kernel. Because of this, the kernel soon got a lot of support and many developers jumped on the project to improve it, until now…

Clarification

In this blog I will write about Linux, Linux itself is a kernel, but since the majority thinks about the operating system when they talk about Linux, I will refer to Linux as an operating system. (I hope the Linux hardcores can forgive me).

Core components

  • Kernel: The Linux kernel is the most crucial component of the operating system. It allows the hardware to communicate with the software and vice versa. The kernel is also responsible for resource management and process management. The Linux kernel also enforces the system security, controlling that users and programs have the necessary permissions.
  • GNU tools: The GNU tools contain necessary libraries and utilities for Linux. They are build by the GNU project. There are several tools provided by the GNU project, but here are the most important ones.
    • Bash: Bash is the default command line shell for many distributions. It provides a GUI to execute commands.
    • Core utilities: The core utilities contain basic command line command like: ls, rm, cp, mv, and many more.
    • Libraries: Linux needs various libraries, one of the most significant one is the GNU C library, this library provides essential system calls and basic functions for C programs.
    • Compilers: A compiler is a system tool which every operating system requires, the GCC (GNU Compiler Collection) is a compiler supporting various programming languages, including C, C++ and many more.
  • Shell: The shell allows users to interact with the system through commands. There are several types of shells, the most known and used one is Bash, as already mentioned above. Here are 4 other shells:
    • Zsh: (Z Shell) is an extended Bash shell with implemented extensions, themes, and plugins. A lot of tech enthusiasts uses this shell to customize their shell how to need it.
    • Fish: (Friendly Interactive Shell) is a user-friendly and more modern looking shell. It comes with preconfigured configurations, so that the user doesn’t have to customize anything.
    • Ksh: (Korn Shell) is a combination between the Bourne shell and the C shell. It was developed in the late 1980s, so it’s already rather old and isn’t being used widely anymore.
    • Sh: (Bourne Shell) is one of the oldest and simplest shells. It was developed in 1979 and was the basis for many other shells like bash and Ksh.

Open source

Linux is published under the GPL (General Public License), which allows users to view and modify the Linux kernel according to their needs. That seems quite scary, because bad actors can see at the code and find bugs or backdoors. But there are a lot more good actors and developer who want to improve the Linux kernel and fix the bugs before they can be exploited.

Stability and Performance

  • Linux is known to be extremely stable, that’s because almost every server runs on Linux. Unlike windows, Linux doesn’t have force updates, you can update your system whenever you want, even if it’s every 10 years. Linux is also very efficient and can run on minimal resources available, that’s because server that run on Linux “never” install the GUI. Which requires a lot of resources, and is unnecessary for the server.
  • Modular: As already mentioned above Linux can be modified for your need, that means you can install the kernel you want (several exist), the software you need and how many resources a program can approximately use. This leads to very efficient and stable systems.
  • LTS: Many distros like Debian, Ubuntu, RHEL, and many others get LTS (Long Term Support) releases. LTS release get as the name suggests long time updates, most of the time up to 10 years of updates for the same release.
  • Scalability: Linux can be used with 1 core and even with just as little 100 MB of RAM, up theoretically unlimited. Linux can be easily scaled up and down, some components like storage and ram can be swapped (if the hardware supports it “hot swapping”), while the system is running and doesn’t have to be rebooted.

Community

Linux has a large community, which can assist you with problems or errors. There are a ton of documentations and forums about almost every issue you could encounter. Additionally, there are many open source projects, which are being developed by the community.

Distributions

Linux can be modified and changed for many use cases. That’s why there exist hundreds of distros. Each with their package manager, selection of software, pre-configurations and of course default wallpapers. This ensures what everyone will find their distro for their needs.

1 thought on “Linux”

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top