Echtzeit auf dem Raspberry Pi mit dem Linux PREEMPT_RT-Patch
Die Echtzeitbetriebssysteme ChibiOS/RT und FreeRTOS unterstützen auch bestimmte ARM-Architekturen. Das eignet sie prinzipiell zum Betrieb auf einigen Raspberry Pi Modellen wie dem Raspberry Pi 2 und 2B. (Im Bild: YouTube-Screenhot einer ChibiOS/RT-Demo auf einem Raspberry Pi).
(Bild: Vergil Cola / YouTube / lightsurge2.blogspot.de)
Der Raspberry Pi ist in zunehmendem Maß auch als Plattform für Embedded Systeme interessant. Anders als bei Media- oder Web-Servern kommt es bei zahlreichen Embedded-Anwendungen allerdings explizit auf vorhersehbare Timings mit niedrigen Latenzzeiten an – Anforderungen, die selbst ein leichtgewichtiges Raspbian-Derivat oder eine der geläufigen Linux-Varianten nur unzureichend erfüllen kann.
Für den Raspberry Pi sind zahlreiche Betriebssysteme vorhanden, die jedoch Echtzeitanforderungen in der Regel nur unzureichend erfüllen. Fortgeschrittene Linux-Anwender können dagegen mit Hilfe des PREEMPT_RT Patches des Linux-Mainline-Kernels auf dem Raspberry Pi echte, praktikable Echtzeiteigenschaften erreichen. Dies ist spätestens seit Version 4.4.8 des Linux-Mainline-Kernels auch auf dem Einplatinenrechner praktikabel. Dieser Lösungsansatz bietet sich speziell für das Raspberry Pi 3 mit dem BCM2709-SoC-Chipsatz von Broadcom an.
Anders als bei den meisten hier beschriebenen Betriebssystemen handelt es sich hier um keine „Out-of-the-Box“-Lösung: Anwender müssen in der Lage sein, händisch einen Linux-Mainline-Kernel auf einem Raspberry Pi aufzusetzen und zu konfigurieren. Auf der Website des OSADL finden Sie eine detaillierte Anleitung und die Möglichkeit, sich für einige der aufwändigeren Schritte Skripte generieren zu lassen. Diese Beschreibung wird regelmäßig parallel zu aktuelleren Kernel-Versionen aktualisiert. Der aktuelleste Stand für Echtzeit-Linux ist die gepatchte Kernel-Version 5.6.10-rt5). Für den Raspbian-Kernel 4.19 liegt auch eine kürzlich aktualisierte Patch-Version vor (patch-4.19.120-rt52, Stand 6. Mai 2020)
Eine detaillierte Beschreibung, wie Sie auf einem Raspberry Pi mit dem Linux PREEMT_RT-Patch Echtzeiteigenschaften erreichen können, finden Sie im Fachbeitrag Echtzeit mit dem Raspberry Pi von Dr.-Ing. Claus Kühnel .
Umsetzungen von ChibiOS/RT, FreeRTOS und RTEMS
Ansonsten gab es bereits seit dem Erscheinen des Single Board Computers einige Bemühungen, Mikrokernel auf dem Raspberry Pi zu betreiben und mit zufriedenstellender Funktionalität einzusetzen – mit mehr oder weniger Erfolg. Zwei vielversprechende Portierungen sind die Umsetzungen der auf Open-Source-Kernel aufbauenden Echtzeitbetriebssysteme ChibiOS/RT und FreeRTOS.
ChibiOS/RT ist ein äußerst schnelles RTOS, das über eine GPL3-Lizenz vertrieben wird und für Embedded-Anwendungen auf Basis von 8-, 16- und 32-Bit-Mikrocontrollern konzipiert ist. Es bietet eine gute Leistung beim Context Switching und unterstützt Externe Komponenten (uIP, lwIP, FatFs) sowie C++ Applikationen.
Eine offizielle Unterstützung für das Raspberry Pi besteht nicht, eine Portierung muss eigenhändig kompiliert werden. Es bestehen aber erfolgreiche Ports des RTOS, die zumindest auf einem Raspberry Pi Model 2 erfolgreich und stabil laufen. Eine hier im Detail beschriebene Portierung auf das Raspberry Pi bietet Treiber für GPIO- und serielle Ports, GPT (General-Purpose Timer), I2C, SPI und PWM. Ein zweites, älteres Beispiel mit einigen Codeauszügen ist auch auf diesem Blog zu finden, zusammen mit einem Video einer hierauf aufgesetzten Demo.
Das über GPL-Lizenz kursierende FreeRTOS ist bereits länger erhältlich und eines der populärsten freien Echtzeitbetriebssysteme. Es bietet einen extrem schlanken Mikrokernel, der gerade einmal aus drei C files besteht und damit nur ein Minimum an Arbeitsspeicher benötigt. FreeRTOS wurde bereits auf 35 Mikrocontroller portiert und existiert auch in einer Variante, die ARMv7-Architekturen unterstützt. Damit eignet sich das Echtzeitbetriebssystem prinzipiell auch für den Einsatz auf einem Raspberry Pi 2 Model B.
Eine funktionale Demo besteht und kann seit Mitte 2016 von einem Github-Repository frei bezogen werden. Für den Einsatz in individuellen Anwendungen muss das System allerdings eigenhändig kompiliert werden. Die Portierung ist ein Community-Projekt, weshalb es für den aktiven Einsatz derzeit keinen Support seitens des Entwicklers gibt. Darüber hinaus wurde das Projekt seit dem 11. Dezember 2017 nicht mehr aktualisiert.
Auch das Echtzeitbetriebssystem RTEMS wurde vor einigen Jahren für die Benutzung auf dem Raspberry Pi portiert. Wie in den Fällen von ChiboOS/RT und FreeRTOS handelt es sich dabei um die Portierung eines OpenSource-Kerlnel durch einen einzelnen, unabhängigen Entwickler. Die Umsetzung scheint nicht ganz so gelungen zu sein, wie im Fall von ChibiOS oder FreeRTOS. Dafür wird das Projekt im Gegensatz zu den beiden letztgenannten vom Entwickler weiter verfolgt. Die jeweils aktuellen Daten stehen in einem Github-Repository bereit (Letzter Commit: 4. Januar 2020).
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.