Skip to content

What Is Linux?

In this page you'll learn what Linux actually is (and isn't), how the kernel differs from a full operating system, why it's open source, and where it runs — from the smallest router to the world's fastest supercomputers. This sets the foundation for everything else in this learning track.

Tested on

AlmaLinux 9.4 (kernel 5.14). Commands shown are portable across virtually all Linux distributions.

Linux is a kernel, not an operating system

This is the single most important idea on this page: Linux is a kernel.

The kernel is the core program that sits between your hardware and everything else. It is the first real program the system loads after the bootloader, and it never stops running while the machine is on. The kernel is responsible for:

  • Process scheduling — deciding which program runs on which CPU core and for how long.
  • Memory management — handing out RAM to programs and reclaiming it.
  • Device drivers — talking to disks, network cards, USB devices, GPUs.
  • Filesystems — turning raw blocks on a disk into files and directories.
  • System calls — the controlled doorway through which programs ask the kernel to do privileged work (open a file, send a packet, fork a process).

What the kernel is not: a desktop, a web browser, a shell, a package manager, or a login screen. All of those are separate programs that run on top of the kernel. When people say "I installed Linux," they almost always mean they installed a distribution — a complete operating system that bundles the Linux kernel together with thousands of other programs. More on that on the next page.

# Ask the kernel to identify itself
uname -a
Linux web01 5.14.0-427.13.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 7 ... x86_64 x86_64 x86_64 GNU/Linux

Reading that line left to right: kernel name (Linux), hostname (web01), kernel release (5.14.0-427...), build info, and the machine architecture (x86_64).

# The kernel also publishes its version through the /proc virtual filesystem
cat /proc/version
Linux version 5.14.0-427.13.1.el9_4.x86_64 (mockbuild@...) (gcc 11.4.1 ...) #1 SMP ...

Note

/proc is not a real folder on disk. It's a virtual filesystem the kernel generates in memory to expose information about itself and running processes. This is a first taste of the Linux philosophy that everything is a file — you'll see it again in the filesystem hierarchy page.

GNU/Linux: where the rest of the system comes from

A bare kernel can't do much on its own — you can't even list a directory, because ls is a separate program. Most of the essential user-facing tools (the shell, ls, cp, grep, the C compiler, coreutils, and much more) come from the GNU Project, started by Richard Stallman in 1983 to build a free Unix-like operating system.

GNU had nearly everything except a working kernel. In 1991, a Finnish student named Linus Torvalds released the Linux kernel. Combining the GNU userland with the Linux kernel produced the first complete, free Unix-like systems — which is why purists insist the correct name is GNU/Linux. In everyday speech almost everyone just says "Linux."

Layer Comes from Examples
Kernel Linux scheduler, drivers, filesystems
Core userland GNU bash, ls, cp, grep, gcc, glibc
Init/service manager various systemd (most modern distros)
Everything else thousands of projects OpenSSH, nginx, Python, Docker

A very brief history

  • 1969–1970s — Unix is created at AT&T Bell Labs. Its design (small tools, plain-text files, "everything is a file") shapes everything that follows.
  • 1983 — Richard Stallman launches the GNU Project and writes the GNU General Public License.
  • 1991 — Linus Torvalds announces the Linux kernel: "I'm doing a (free) operating system (just a hobby, won't be big and professional…)." It became very big and very professional.
  • 1993–1994 — The first distributions appear (Slackware, Debian), bundling kernel + userland into installable systems.
  • 2000s — Linux conquers the data center and the web.
  • 2008 — Android (built on the Linux kernel) launches, eventually putting Linux in billions of pockets.
  • Today — Linux runs the cloud, containers, and 100% of the TOP500 supercomputers.

Open source and the GPL

Linux is free and open-source software (FOSS). "Free" here means freedom, not just price — the freedom to run, study, modify, and redistribute the software.

The Linux kernel is licensed under the GNU General Public License version 2 (GPLv2). The GPL is a copyleft license: if you distribute a modified version of GPL software, you must also make your source code available under the same license. This "share-alike" requirement is why improvements flow back into the shared codebase instead of disappearing into closed products, and it's a big reason Linux improved so rapidly.

Tip

Open source does not mean "no companies involved." The vast majority of kernel contributions today come from paid engineers at companies like Red Hat, Intel, Google, SUSE, and Meta — they collaborate on the shared kernel because everyone benefits.

The kernel / shell / userland model

It helps to picture a Linux system as concentric rings:

        ┌─────────────────────────────┐
        │        Hardware             │   CPU, RAM, disks, NICs
        │   ┌─────────────────────┐   │
        │   │      Kernel         │   │   Linux: drivers, scheduler, memory
        │   │  ┌───────────────┐  │   │
        │   │  │    Shell      │  │   │   bash — your command interpreter
        │   │  │ ┌───────────┐ │  │   │
        │   │  │ │ Userland  │ │  │   │   ls, nginx, python, your apps
        │   │  │ └───────────┘ │  │   │
        │   │  └───────────────┘  │   │
        │   └─────────────────────┘   │
        └─────────────────────────────┘
  • Hardware at the bottom.
  • Kernel is the only software allowed to talk to hardware directly (it runs in privileged "kernel space").
  • Userland is every normal program, running in restricted "user space." When a program needs hardware access, it asks the kernel via a system call.
  • The shell is just a userland program — a command interpreter that lets you drive the system. You'll meet it in Shell basics.

This separation is what makes Linux stable and secure: a crashing application can't take down the kernel, and an unprivileged user can't directly scribble on the disk.

Where Linux runs

Linux is almost certainly the most widely deployed operating system kernel on Earth. It runs on:

  • Servers — web, database, mail, and application servers. The backbone of the internet.
  • The cloud — AWS, Azure, Google Cloud, and OpenStack run overwhelmingly on Linux instances.
  • Containers — Docker and Kubernetes are built on Linux kernel features (namespaces and cgroups).
  • Embedded devices — routers, smart TVs, cameras, cars, industrial controllers.
  • Android — over 3 billion active devices, all on the Linux kernel.
  • Supercomputersall of the TOP500 fastest computers in the world run Linux.
  • Desktops & laptops — a smaller but devoted user base, and the daily driver for many developers and admins.

Why sysadmins use Linux

System administrators reach for Linux because it is:

  • Free and unlimited — no per-core or per-seat licensing to deploy a thousand servers.
  • Stable and long-lived — enterprise distributions ship 10 years of support.
  • Scriptable and automatable — a text-based shell and config files make automation (Ansible, shell scripts) natural.
  • Transparent — you can read the source and the logs; nothing is hidden.
  • Remote-first — designed from day one for headless, SSH-driven administration.
  • The industry standard — the cloud, containers, and DevOps tooling all assume Linux.

The key takeaway

Linux is the kernel. A usable system is the kernel plus a distribution's choice of tools, packaging, and release policy. Understanding that split is the whole point of the next page.

Verify your work

# 1. Identify the running kernel and architecture
uname -srm

# 2. See the full version string the kernel reports
cat /proc/version

# 3. Confirm the shell you're using is itself just a program
echo "$SHELL"      # e.g. /bin/bash

# 4. Prove the kernel is separate from the OS name — note the GNU/Linux at the end
uname -a

You should be able to answer, in your own words: What is the difference between "Linux" and a "Linux distribution"? If you can, you're ready to move on.

Summary

  • Linux is a kernel — the core that manages hardware, processes, memory, and system calls.
  • A complete operating system is the kernel plus GNU userland, an init system, and many other programs — hence the name GNU/Linux.
  • The kernel runs in privileged kernel space; everything else (including the shell) runs in user space and reaches hardware through system calls.
  • Linux is open source under the GPLv2, a copyleft license that keeps improvements shared.
  • It powers servers, the cloud, containers, Android, embedded devices, and every TOP500 supercomputer.
  • Sysadmins choose Linux for its cost, stability, transparency, scriptability, and remote-first design.
  • Next: how the kernel is packaged into the Linux distributions you actually install.

Test yourself