Linux Tutorial / What Is Linux? Understanding the Kernel, Distributions, and Open Source
Strictly speaking, Linux is a kernel: the part of an operating system that manages resources between hardware and programs. What people install as a “Linux operating system” is usually a distribution that combines the kernel with commands, libraries, and tools for installing and updating software. This distinction explains why Ubuntu and Rocky Linux are both Linux-based systems but do not work in exactly the same way.
Is Linux a kernel or an operating system?
Both expressions are used, but they refer to different scopes. The Linux kernel is the core program of an operating system. In everyday conversation, a Linux operating system usually means the complete, usable system built around that kernel. Accordingly, “updating the Linux kernel” and “installing Linux” do not describe the same task.
The kernel allocates CPU time and memory to running programs and handles filesystems, networking, and hardware through device drivers. Programs use interfaces provided by the kernel rather than controlling storage devices directly. The official Linux kernel documentation likewise distinguishes the kernel from the interfaces used by programs outside it.
Commands that copy files, web browsers, web servers, and graphical desktops are not parts of the kernel itself. They run in user space and call on kernel functions when needed. Many Linux distributions include tools from the GNU Project, but not every user-space program comes from GNU. The GNU Project's explanation of GNU and Linux discusses this relationship in more detail.
What are the main parts of a Linux system?
For a first mental model, it helps to think of three layers. This is a simplification: a real system also has a boot process and many components in between.
- Hardware: the physical CPU, memory, storage, network devices, and other components.
- Linux kernel: the software that manages hardware resources and provides common facilities to programs.
- User space: the area where shells, commands, system services, libraries, graphical environments, and applications run.
For example, when you run a command in a terminal to read a file, the command runs in user space while the operation of opening the file goes through the kernel. Systems with the same kernel can look very different depending on which user-space software they include, such as server tools or a desktop environment.
What does a distribution add?
A Linux distribution selects and combines the Linux kernel with other software, then provides a way to install, configure, and update the resulting operating system. Distributions typically include a package manager and software repositories, basic system services, a security-update policy, and documentation. The Debian Project's introduction also describes a distribution as a complete operating system rather than just a kernel.
Ubuntu and Rocky Linux, for example, both use the Linux kernel, but their package formats, software-management tools, default configurations, and support policies differ. When following instructions, it is useful to ask whether a step concerns the Linux kernel, a tool common to many distributions, or a method specific to one distribution. Choosing a distribution belongs to lesson 02; for now, the key point is that sharing a kernel does not make two complete systems identical.
What does open source mean?
Open source means more than being able to view source code. Under the applicable license, people must be allowed to use, modify, and redistribute the software. The Open Source Initiative's Open Source Definition includes conditions covering source-code availability, redistribution, and derived works.
Open source is also different from “available at no cost.” Software can be free to download without granting permission to modify or redistribute it. Conversely, open-source software may be sold, and a company may charge for support. Components of a distribution do not necessarily all use the same license or all qualify as open source, so check the relevant license before relying on particular rights to use, change, or distribute a program.
What can you check on your own system?
If you have access to a Linux computer or virtual machine, this command shows the running kernel release:
uname -r
The distribution name and version are usually available in this file:
cat /etc/os-release
In the output, PRETTY_NAME is a human-readable distribution name, while ID and VERSION_ID identify the distribution and its version. The result of uname -r and the distribution version describe different things, so their numbers do not need to match. Some minimal or specialized systems may not have /etc/os-release, or may display different details.
Key ideas to remember
- Kernel: the core of the operating system that manages hardware resources and provides common facilities to programs.
- User space: where shells, commands, services, and applications run.
- Distribution: a complete system that packages the Linux kernel with other software and tools for installation and management.
- Open source: software whose license permits use, modification, and redistribution under its conditions.
For the story of how Linux began and evolved, see A History of Linux: From a 1991 Hobby Project to Global Infrastructure. This lesson instead focuses on the components and terminology of a present-day Linux system.









