Select Page

Zephyr RTOS – Scalable Real-Time Operating System for Modern Embedded Systems

In many projects, there is a gap between bare-metal development and embedded Linux. Linux is powerful, but often too resource-intensive. Pure microcontroller implementations without an operating system, on the other hand, quickly become difficult to manage as complexity and maintenance requirements increase.

The Zephyr RTOS positions itself right in the middle of this tension.In our webinar "Why should I Force Zaphyr on my Microcontroller?" (German) , Zephyr expert Andreas Klinger introduced the system and demonstrated why it is becoming increasingly important for modern embedded applications.

What sets Zephyr apart?

Zephyr is an open-source real-time operating system that enables deterministic behavior and was developed specifically for resource-constrained systems. It combines classic RTOS principles with a modern open-source architecture and remarkably flexible configurability.

Its key features include:

  • deterministic real-time behavior
  • high scalability – from very small microcontrollers to more powerful systems
  • fine-grained configurability
  • Apache 2.0 license without copyleft obligations
  • compilation into a single executable

This last point, in particular, is relevant from an architectural standpoint: The operating system, drivers, hardware abstraction, and application are combined into a single image. This model reduces complexity and simplifies industrial product integration.

Lizenzmodell – Planungssicherheit für industrielle Produkte

Zephyr steht unter der Apache-2.0-Lizenz. Im Unterschied zur GPL bedeutet das

  • keine Verpflichtung zur Offenlegung eigener Applikationsquellen
  • keine Copyleft-Weitergabe bei Produktdistribution
  • nur geringe Dokumentationspflichten

Für viele Unternehmen ist das ein entscheidender Faktor bei der Wahl eines RTOS. Die Lizenz erlaubt proprietäre Entwicklungen ohne spätere juristische Unsicherheiten.

Skalierbarkeit unterhalb der Linux-Schwelle

Ein zentrales Designprinzip von Zephyr ist extreme Anpassbarkeit. Während Embedded-Linux typischerweise mehrere Megabyte RAM benötigt, kann Zephyr bereits mit wenigen Kilobyte betrieben werden.

Diese Flexibilität entsteht durch konsequente Konfigurierbarkeit. Optional sind unter anderem

  • verschiedene Scheduling-Modelle
  • Logging-Subsysteme
  • Shell-Funktionalität
  • Heap-Verwaltung (Kernel und User Space getrennt möglich)
  • Memory-Protection-Mechanismen
  • einzelne Treiber-Subsysteme

Ein besonders praxisrelevanter Aspekt: Der Speicherbedarf wird bereits während des Buildprozesses exakt berechnet. Wird das verfügbare RAM überschritten, bricht der Build ab. Ressourcenprobleme werden somit frühzeitig sichtbar – nicht erst im Feld.

Device Tree – bekanntes Konzept, effizient umgesetzt

Zephyr verwendet – wie Linux – das Device-Tree-Konzept zur Hardwarebeschreibung. Der Unterschied liegt jedoch im Zeitpunkt der Verarbeitung. Während Linux den Device Tree zur Laufzeit interpretiert, wird er in Zephyr vollständig zur Kompilierzeit aufgelöst. Über C-Preprocessor-Mechanismen werden Hardwaredefinitionen direkt in ausführbaren Code transformiert.

Das führt zu

  • keinem Runtime-Overhead
  • vollständiger Eliminierung ungenutzter Hardwarekomponenten
  • minimalem Footprint

Linux-DTS-Dateien können nicht direkt übernommen werden, da sich das Treibermodell unterscheidet. Die strukturelle Orientierung bleibt jedoch möglich.

Entwicklungsumgebung – modern und vertraut

Für Entwickler mit Embedded-Linux-Hintergrund fühlt sich Zephyr sofort vertraut an. Die Toolchain basiert auf etablierten Komponenten:

  • C
  • CMake
  • Kconfig
  • Git
  • GDB / OpenOCD
  • VS Code Integration

Zentrales Steuerungswerkzeug ist das Meta-Tool west, das Buildprozesse, Boardverwaltung, Debugging und Repository-Synchronisation bündelt.

Der Einstieg ist bewusst niedrigschwellig gehalten: Eine einfache main.c, eine Projektkonfiguration und eine CMake-Datei reichen für ein erstes lauffähiges System. Das Betriebssystem wird über den Build-Mechanismus integriert.

Scheduling – leistungsfähig, aber anpassbar

Zephyr bietet ein differenziertes Scheduling-Modell mit

  • Hardware-Interrupts
  • High-Priority Meta IRQ Threads
  • kooperativen Threads
  • präemptiven Threads
  • Idle-Thread

Wichtig ist: Dieses Modell ist konfigurierbar. Entwickler können das System stark vereinfachen oder komplexer auslegen – abhängig vom Anwendungsfall. Zephyr zwingt nicht zur maximalen Funktionalität.

Zephyr Scheduling

Bild 1: Zephyr Scheduling

Typische Einsatzbereiche

Zephyr eignet sich besonders für Anwendungen, in denen Linux zu groß oder strukturell überdimensioniert wäre. Dazu zählen beispielsweise

  • batteriebetriebene Sensoren
  • IoT-Geräte
  • Wearables
  • Industriecontroller
  • Low-Power-Systeme

Low-Power-Modi von Mikrocontrollern werden explizit unterstützt.

Weniger geeignet ist Zephyr derzeit für komplexe Multimedia- oder Videoanwendungen mit hohem Datendurchsatz – hier bleibt Embedded-Linux meist die bessere Wahl.

Zephyr Beispielprojekt

Bild 2: Zephyr Beispielprojekt

Fazit: Lücke zwischen Bare Metal und Linux schließen

Zephyr schließt eine wichtige Lücke im Embedded-Ökosystem. Es bietet deterministisches Echtzeitverhalten, moderne Open-Source-Struktur und außergewöhnliche Skalierbarkeit – ohne die strukturelle Schwere eines Linux-Systems.

Wer unterhalb der Linux-Schwelle arbeitet, aber dennoch von klarer Systemarchitektur, modularer Treiberstruktur und professionellem Tooling profitieren möchte, findet in Zephyr eine leistungsfähige Alternative.

MicroConsult begleitet Unternehmen dabei – von der Architekturberatung über projektbezogenes Coaching bis hin zum mehrtägigen Praxisseminar, in dem Entwicklerinnen und Entwickler Zephyr systematisch erlernen und direkt anwenden:

Im MicroConsult Zephyr Training lernen Sie, wie Sie für den Aufbau eines Zephyr-Targets vorgehen und was Sie dazu benötigen. Der Aufbau und die Funktionsweise eines Zephyr-Systems mit harten Echtzeiteigenschaften stehen im Mittelpunkt. Im Zephyr-Training wird nur frei zugängliche Open-Source-Software eingesetzt.

Further information

MicroConsult Training: Zephyr – der kleine Bruder vom Tux

MicroConsult Training & Coaching zum Thema Embedded- und Echtzeit-Betriebssysteme

MicroConsult expertise in embedded and real-time software development

All MicroConsult training & coaching

MicroConsult Newsletter

With the MicroConsult newsletter, you'll stay on the pulse of the embedded world. Look forward to proven practical knowledge, real professional tips, and current events – directly from our experts for your project success.

Subscribe now!

Published by

Dipl.-Ing. (FH) Andreas Klinger

Dipl.-Ing. (FH) Andreas Klinger