Frequently Asked Question
What exactly is the Linux kernel?
The Linux kernel is the core software that sits between the hardware and everything else
on a Linux system. It is the program in /boot/vmlinuz that the bootloader hands control
to, and it stays resident in memory for the entire uptime of the machine. Its jobs are to
schedule processes onto CPUs, manage virtual memory, provide a filesystem abstraction over
block devices, drive network interfaces, and expose a system-call interface (around 350
syscalls on x86-64) that user-space programs use to ask for those services.
A "Linux system" you actually use day-to-day, a Debian server, an Android phone, a Raspberry Pi, is the kernel plus thousands of user-space programs (the C library, the shell, init, compilers, GUI). The kernel alone is just the engine; the rest of the operating system is built on top of it.