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:
Common root filesystem implementations:
- BusyBox
- Buildroot
- Yocto