Skip to content

Embedded Linux Overview

Embedded Linux systems typically consist of four major components.


System Architecture

+----------------------+
|   User Applications  |
+----------------------+
|     Root Filesystem  |
+----------------------+
|      Linux Kernel    |
+----------------------+
|      Bootloader      |
+----------------------+
|       Hardware       |
+----------------------+

Bootloader

The bootloader initializes the hardware and loads the Linux kernel.

Common bootloaders:

  • U-Boot
  • Barebox

Responsibilities:

  • Initialize DRAM
  • Load kernel image
  • Load device tree
  • Jump to kernel entry point

Linux Kernel

The Linux kernel is responsible for:

  • Process scheduling
  • Memory management
  • Device drivers
  • Network stack
  • Filesystems

Root Filesystem

The root filesystem contains user-space tools and libraries.

Typical structure:

/
├── bin
├── sbin
├── etc
├── lib
├── proc
├── sys
└── dev

Common root filesystem implementations:

  • BusyBox
  • Buildroot
  • Yocto