Linux Kernel

The Linux kernel is the open-source, monolithic operating system kernel that forms the foundation of Linux-based systems — from embedded microcontrollers and industrial controllers to smartphones, servers, and supercomputers.

Architecture

The kernel manages hardware resources and exposes them to user space through a stable system call interface. Core subsystems include:

  • Process scheduler — CFS for throughput, PREEMPT-RT patches for deterministic real-time latency
  • Memory management — virtual memory, huge pages, NUMA balancing, CMA for DMA-capable buffers
  • Device model — unified bus/driver binding via struct device, device tree for hardware description
  • Virtual file system (VFS) — abstraction layer over ext4, btrfs, overlayfs, tmpfs, and others
  • Networking stack — full TCP/IP, raw sockets, netfilter, and hardware offload paths
  • Security subsystems — LSM framework, SELinux, AppArmor, seccomp, KASLR, kernel lockdown

Embedded and Real-Time Use

For embedded and industrial targets the most relevant kernel features are:

  • PREEMPT-RT — converts most kernel spinlocks to sleeping mutexes, enabling sub-100 µs worst-case latency
  • Device tree (DTS/DTB) — hardware description compiled separately from the kernel image; used on ARM, RISC-V, and MIPS platforms
  • Kconfig / Kbuild — granular configuration system; strips unused subsystems to reduce image size and attack surface
  • Cross-compilationARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- toolchain variables; supported for x86-64, ARM32/64, RISC-V, MIPS, PowerPC
  • Initramfs / initrd — early user space for mounting root; critical in secure-boot chains
  • dm-verity — block-level integrity verification for read-only root filesystems

Versioning and Long-Term Support

The kernel follows a roughly 8–10 week release cycle (v6.x). The kernel.org LTS programme maintains selected releases for 2–6 years. Common LTS branches used in production embedded systems:

  • 6.6 LTS — current long-term (EOL Dec 2026)
  • 6.1 LTS — used in Debian 12, Yocto Scarthgap (EOL Dec 2026)
  • 5.15 LTS — widely deployed, EOL Dec 2026
  • 5.10 LTS — Android Common Kernel base, EOL Dec 2026

Upstream Contribution

The kernel uses a patch-based workflow over mailing lists. Subsystem maintainers collect patches and send pull requests to Linus Torvalds for each merge window. Key tools: git send-email, b4, checkpatch.pl, scripts/get_maintainer.pl.

Related Technologies

  • U-Boot — most common bootloader on embedded targets; loads the kernel image and DTB
  • Yocto Project — build system for custom Linux distributions; manages kernel recipe, patches, and config fragments via linux-yocto or vendor BSP layers
  • Buildroot — simpler alternative to Yocto for smaller embedded systems
  • Zephyr RTOS — not Linux, but the standard RTOS alternative for MCU targets where Linux is too heavy
Copyright © 32bitmicro, LLC 2024-2026