Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.


Linux
Tux
Tux, the Linux mascot.
Release Status Maintained
Last Release 6.10-rc2, 2024-06-02
Language(s) C, Assembly, Rust
Developer(s) Linus Torvalds, community contributors
Website kernel.org
Linux 5.15.19 Kernel boot process

Linux Kernel

The Linux kernel is the core component of the Linux operating system and is responsible for managing system resources, enabling hardware-software interaction, and providing essential services to user-space programs. Developed initially by Linus Torvalds in 1991, it has since become one of the most widely used kernels in the world, powering systems ranging from smartphones and servers to embedded devices and supercomputers.

Overview

The Linux kernel is a monolithic kernel, meaning it contains all the necessary code for managing the CPU, memory, file systems, device drivers, and networking, but it is modular in nature, allowing dynamic loading and unloading of kernel modules.

Architecture

Key Components

  • Process Scheduler: Determines which process runs at any given time.
  • Memory Manager: Manages allocation and deallocation of memory space.
  • Virtual File System (VFS): Provides an abstraction layer over different file systems.
  • Network Stack: Handles network protocols and communication.
  • Device Drivers: Allow the kernel to communicate with hardware devices.
  • System Calls: Interface between user space and kernel space.

Supported Architectures

The Linux kernel supports a wide variety of hardware architectures, including:

  • x86 / x86_64
  • ARM / AArch64
  • MIPS
  • PowerPC
  • RISC-V
  • SPARC

Development

The Linux kernel is developed collaboratively by thousands of developers across the globe. Contributions are managed via the Git version control system, and the official source code repository is hosted at git.kernel.org.

Key Maintainers

  • Linus Torvalds – Lead maintainer and creator of the kernel
  • Subsystem maintainers – Responsible for specific areas such as networking, file systems, and architecture-specific code

Release Model

The Linux kernel follows a rolling release model with a new stable version approximately every 9 to 10 weeks. Long-Term Support (LTS) versions are maintained for extended periods (up to 6 years or more).

Licensing

The Linux kernel is licensed under the terms of the GNU General Public License version 2 (GPLv2), which allows users to run, study, share, and modify the software.

Use Cases

The Linux kernel is used in a wide array of devices and systems:

  • Android smartphones and tablets
  • Web servers and data centers
  • Desktop Linux distributions (e.g., Ubuntu, Fedora, Arch Linux)
  • Embedded systems and Internet of Things (IoT) devices
  • Supercomputers

See Also

External Links

References


The Linux kernel is a free and open source Unix-like kernel that is used in many computer systems and servers.

If you want to know about the source code, you can look https://www.kernel.org/

References