Suchen

Embedded-OS

40 Betriebssysteme für den Raspberry Pi

Seite: 14/16

Firmen zum Thema

Echtzeitbetriebssysteme für Raspberry Pi: ChibiOS/RT und FreeRTOS

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).
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 )

Das Raspberry Pi in zunehmendem Maß auch als Plattform für Embedded Systeme interessant geworden. 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.

Bildergalerie

Bildergalerie mit 40 Bildern

Schon seit dem Erscheinen des Single Board Computers gab es einige Bemühungen, Mikrokernel auf dem Raspberry Pi zu betreiben und mit zufriedenstellender Funktionalität einzusetzen. Zwei der aktuell vielversprechendsten Portierungen sind die Umsetzungen der auf Open-Source-Kernel aufbauenden Echtzeitbetriebssysteme ChibiOS/RT und FreeRTOS.

Betriebssystem 33: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.

Betriebssystem 34: 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.

Zu bedenken ist, dass es sich in beiden Fällen um aus der Community stammende, grundsätzliche Portierungen handelt. Ein Einsatz ist damit mit sehr viel eigenhändigem Aufwand verbunden, eine Funktionalität nicht garantiert.

Nachtrag 04. Juli 2017

Seit Veröffentlichung dieses Beitrags sind wir auf zwei weitere RTOS-Systeme aufmerksam gemacht worden, die ihren Weg auf den SBC gefunden haben. Besonders interessant ist hier der Preempt-Realtime-Patch für das Raspberry Pi, den das OSADL (Open Source Automation Development Lab) beschreibt. Dieser Lösungsansatz bietet sich für das Raspberry Pi 3 mit dem BCM2709-Chipsatz von Broadcom an.

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 wie in den letztgenannten Fällen zu sein. Der Entwickler verfolgt das Projekt allerdings weiterhin und stellt seine Daten in einem Github-Repository zur Verfügung.

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44770973)

Über den Autor

Sebastian Gerstl

Sebastian Gerstl

Redakteur

Thomas Kuther; Pixabay; ; Luca Soltoggio / Minibian.wordpress.com; Screenshot/DietPi.com; Robert di Marcoberardino/Screenshot; Screenshot / Snapcraft.io; Screenshot / Raspberry Pi Foundation; PiNet Team / pinet.org.uk; By Andrea `BaSh` Scarpino, via Wikimedia Commons; Kali Linux Bureau, vie Wikimedia Commons; Fedberry.org; Screenshot; volumio.org; Screenshot / Recalbox.com; Screenshot / The Docker Pirates / hypriot.com; Vergil Cola / YouTube / lightsurge2.blogspot.de; Arne Exton / raspex.exton.se; Stephen Jones / YouTube; The Boeing Company; Mark Stone/University of Washington; gemeinfrei; metamorworks - stock.adobe.com; Anna-Lena Hillenbrand; Siemens Healthineers; Palo Alto Networks