Linux on embedded systems explained

The Linux operating system is prevalent in embedded systems. As of 2024, developer surveys and industry reports find that Embedded Linux is used in 44%-46% of embedded systems.[1] [2] [3] Due to its versatility, its large community of developers, as well as its adaptability to devices with size and power constraints, Linux is a popular choice for devices used in edge computing[4] and autonomous systems.

History

See main article: Linux kernel version history.

additional source for this section [5]

Early days

Prior to becoming the de-facto standard for microprocessor-based devices,[6] a Linux distribution was created for the Linux Router Project, with the intent of transforming PCs to routers.

Starting in the late 1990s and the first decade of the 21st century, the introduction of μClinux enabled ports to a large variety of microprocessors, especially those without a memory management unit (NOMMU).[7] Linux is also used as an alternative to using a proprietary operating system and its associated toolchain.[8]

Introduction of BusyBox

The introduction of BusyBox in 1999 enabled packaging of critical tools in an embedded system, with a minimal footprint.

The ARM-Linux synergy

ARM processors are prevalent in many embedded devices, due to their low costs, low power consumption, and low heat generation. The open source nature, the flexibility, and the stability of Linux contributes to its widespread adoption to ARM devices.[9]

Development toolchains

The development of the GNU cross-compiler facilitated the adoption of Linux embedded to many processors.

In 2008, Android 1.0 was released, based on the Linux kernel. Android, a Linux-kernel-based operating system acquired and extended by Google and introduced in 2008, has become a highly competitive platform for smartphones and tablets. In time, Android would become the most successful Linux embedded distribution.

Real-time support

Not every embedded Linux distribution is required to or meets real-time requirements.[10] [11] This is particularly relevant for safety critical applications and systems.[12]

The original Linux kernel was not suitable for real-time tasks due to its non-deterministic behavior[13]

Early attempts to provide real-time support, such as RTAI were based on a real-time kernel alongside the standard kernel.

In 2005, the PREEMPT_RT project was initiated to provide a patch to the Linux kernel.[14] [15]

In 2024, the PREEMPT_RT patch was fully merged into the Linux kernel for supported architectures.

The open source nature and security features of Linux have contributed to its prevalence in devices on the edge and IoT systems.[16] Correspondingly, the demand for the real-time capabilities described in the previous subsection, is driven by the proliferation of IoT devices.

Containerization

The emerging technologies of the fourth industrial revolution have driven further enhancements to the Linux kernel, notably the adoption of containerization.[17]

Devices coverage

Due to its freely available source code and ease of customization, Linux has been shipped in many consumer devices. Starlink and SpaceX use embedded Linux on their constellations and rockets.[18] The Embeddable Linux Kernel is a lightweight and customizable Linux distribution appropriate for low resource hardware.[19] Like the synergy with the ARM architecture as mentioned in

  1. The ARM-Linux Synergy
, Linux embedded has evolved with hardware technologies like system on a chip and Single-board computer, networking standards, and memory devices.[20] (example: Raspberry Pi)

Linux embedded ecosystems

With the availability of consumer embedded devices, communities of users and developers were formed around these devices: replacement or enhancements of the Linux distribution shipped on the device have often been made possible thanks to availability of the source code and to the communities surrounding the devices.

Build systems

Alongside the evolution of the Linux kernel, build systems evolved to support the building of an optimized operating system for an embedded device.

Before the emergence of these build systems, developers manually built toolchains and compiled each component of the embedded distribution (kernel, libraries, applications).[21] Currently, there are several solutions, some full build systems, others are supporting tools.

Development tools

Variants

Summary table of variants (2025)

! Category of Variant! Examples
Networking Devices
IoT DevicesUbuntu Core, Balena OS, Raspberry Pi OS
AutomotiveAutomotive Grade Linux
Safety Critical ApplicationsWindriver Linux (commercial product), Enabling Linux in Safety Applications (ELISA),
High reliability Industrial ApplicationsTorizon, Xenomai

See also

Further reading

External links

Notes and References

  1. Web site: Embedded Systems Statistics By Market Size And Technologies . Electro IQ . 24 February 2025 . April 20, 2025.
  2. Web site: The Eclipse Foundation Unveils 2024 IoT & Embedded Developer Survey Results . Eclipse Foundation . 3 December 2024 . 10 May 2025.
  3. Web site: Wind River Continues Long-Standing #1 Ranking in Edge Operating System Platforms . businesswire. 10 May 2025.
  4. Web site: 2023 State of the Edge Report . LFEdge.
  5. Web site: Embedded Linux Timeline . 2net.
  6. Book: Kingman . Henry . The History of Embedded Linux & Best Practices for Getting Started . July 2013 . Linux Foundation . 2.
  7. Web site: Opdenacker . Michael . Introduction to uClinux . bootlin.com.
  8. Web site: Migrating VxWorks applications to Linux . https://web.archive.org/web/20140210185142/http://www.mvista.com/download/Migrating-VxWorks-apps-to-embedded-Linux-slides-with-notes.pdf . 2008 . 2013-11-13 . 2014-02-10 . Monta Vista Software.
  9. Web site: Vuong . Kent . Linux on ARM: The Future of Operating Systems in a Connected World . LinkedIn.
  10. Book: Erciyes . K. . Distributed Real-Time Systems . Real-Time Operating Systems . Computer Communications and Networks . 2019 . 65–88 . 10.1007/978-3-030-22570-4_4 . 978-3-030-22569-8 .
  11. Web site: What does it mean to say "linux kernel is preemptive"?. 2021-03-08. Stack Overflow.
  12. Book: Oshana . Robert . DSP Software Development Techniques for Embedded and Real-Time Systems . Real-Time Operating Systems for DSP . 2006 . 261–320 . 10.1016/B978-075067759-2/50010-7 . 978-0-7506-7759-2 .
  13. Reghenzani . Federico . The real-time linux kernel: A survey on Preempt_RT . ACM Computing Surveys . 2019 . 52 . 1-36 . 10.1145/3297714 . 11311/1076057 . free .
  14. Web site: Real-Time Linux Wiki . Archive Kernel.org.
  15. Web site: PREEMPT_RT patch versions . Linux Foundation.
  16. Web site: Cintay . Emre . The Impact of Linux on Emerging Technologies: IoT, AI, and Beyond . Medium . 24 April 2025.
  17. Web site: Guide to Building Embedded Linux Systems with Containers . Pantacor.
  18. Tim Bird July 2022 (June 2023) Status of Embedded Linux
  19. Web site: ELKS: The Embeddable Linux Kernel System. 2021-04-12. GitHub.com/elks.
  20. Book: Yaghmour . Karim . Building Embedded Linux Systems . 2008 . O'Reilly . 2nd.
  21. Book: Yaghmour . Karim . Building Embedded Linux Systems . 2003 . O'Reilly.