FreeRTOS

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

FreeRTOS ist ein Open-Source-Echtzeitbetriebssystem für eingebettete Systeme. Es wurde auf verschiedene Mikrocontroller portiert. Das unter einer leicht modifizierten GPL stehende Microkernelsystem wird zurzeit in der Version 6.1.1 angeboten. Durch die leichte Modifikation der GPL braucht unter FreeRTOS laufende Applikationssoftware nicht auch unter die GPL gestellt zu werden, wodurch sich das Betriebssystem auch für kommerzielle Projekte eignet. „Event Flags“ werden unter der Bezeichnung „Binary Semaphore“ angeboten.[1] Mutexe sind in neueren Versionen vorhanden.[2] Eine (ebenfalls freie) Alternative zu FreeRTOS ist der TNKernel,[3] der über eine vollständige Synchronisations-API verfügt, aber auf weniger Mikrocontroller portiert wurde als FreeRTOS.

FreeRTOS-Logo

Inhaltsverzeichnis

Merkmale [Bearbeiten]

Um eine gute Wartbarkeit zu gewährleisten, wird FreeRTOS weitestgehend in C entwickelt, lediglich wenige Funktionen sind in Assembler realisiert. Der Scheduler ist konfigurierbar, so dass präemptiver und kooperativer Betrieb möglich ist. Das Betriebssystem unterstützt seit der Version 4 zwei verschiedene Taskklassen. „Echte“ Tasks und Koroutinen, denen nur wenig Speicher zur Verfügung steht.

Dem Paket zum Herunterladen liegen fertige Konfigurationen für diverse Architekturen und diverse Compilerumgebungen bei. Weiterhin liegen diverse Demos (z. B. ein IP-Stack) bei. Auf FreeRTOS.org befindet sich umfangreiche Dokumentation zu FreeRTOS, Anleitungen („tutorials“) sowie Dokumentation über den Aufbau eines RTOS und ein Vergleich der Implementationen auf verschiedenen Mikrocontrollern.

Ein Ableger des Betriebssystems ist SafeRTOS. Basierend auf FreeRTOS, ist es für sicherheitskritische Bereiche nach IEC 61508 konzipiert. Es ist vom TÜV Süd zertifiziert bis Sicherheitsanforderungsstufe SIL 3.

Unterstützte Architekturen [Bearbeiten]

Unterstützte Prozessor-Architekturen:

Weitere beigetragene Portierungen [Bearbeiten]

Verwandte Projekte [Bearbeiten]

SafeRTOS wurde als ergänzendes Produkt zu FreeRTOS entwickelt: mit gleicher Funktionalität, aber mit einmalig konzipierten, sicherheitskritischen Umsetzungen. Das FreeRTOS-Funktionsmodell wurde der kompletten HAZOP-Studie ausgesetzt und sowohl Schwächen im Funktionsmodell als auch in der API wurden identifiziert und beseitigt. Die daraus resultierenden Anforderungen wurden dem "IEC 61508 SIL3"-Entwicklungszyklus unterzogen – dem für eine Softwarekomponente höchstmöglichen Zyklus.

Ein weiteres Projekt ist OpenRTOS, welches eine identische Codebasis wie FreeRTOS hat, jedoch mit unterschiedlicher Lizenzierung. Die OpenRTOS-Lizenz entfernt alle Verweise zur GPL und deren Implikationen. Beispiel: Eine der FreeRTOS Nutzungsbedingung in einem kommerziellen Produkt ist, dass der User von der FreeRTOS-Nutzung informiert wird und dass der Quellcode auf Anfrage herausgegeben werden muss. OpenRTOS muss diese Anforderungen als kommerzielles Produkt nicht erfüllen und es bietet den OpenRTOS-Usern zusätzlich Zugang zum technischen Support.

Einzelnachweise [Bearbeiten]

  1. http://www.freertos.org/Embedded-RTOS-Binary-Semaphores.html
  2. http://www.freertos.org/Inter-Task-Communication.html#Mutexes FreeRTOS Inter-Task-Communication with Mutexes
  3. http://www.tnkernel.com TNKernel

Weblinks [Bearbeiten]