| FreeRTOS | |
|---|---|
| Entwickler | Amazon Web Services (AWS) |
| Lizenz(en) | 10:MIT, davor modifizierteGPLv2 |
| Erstveröff. | 2003 |
| Akt. Version | 202212.01[1]vom4. März 2023 |
| Kernel | Microkernel |
| www.freertos.org | |
FreeRTOS ist einEchtzeitbetriebssystem füreingebettete Systeme. Es basiert auf einerMikrokernelarchitektur und wurde auf verschiedene Mikrocontroller portiert.
FreeRTOS wurde 2003 von Richard Barry entwickelt, welcher in Folge das UnternehmenReal Time Engineers Ltd. für die weitere Entwicklung gründete. Im Jahr 2017 wurdeReal Time Engineers Ltd. vonAmazon Web Services (AWS) aufgekauft und mit dem Übergang zu AWS wechselte die Lizenzierung von GPL Version 2 zu der MIT-Lizenz.[2]
Um eine guteWartbarkeit zu gewährleisten, wird FreeRTOS weitestgehend inC entwickelt, lediglich wenigeFunktionen sind inAssembler realisiert. DerScheduler ist konfigurierbar, so dasspräemptiver undkooperativer Betrieb möglich ist. Das Betriebssystem unterstützt ab der Version 4 zwei verschiedene Taskklassen. „Echte“Prozesse undKoroutinen, denen nur wenig Speicher zur Verfügung steht. „Event Flags“ werden unter der Bezeichnung „Binary Semaphore“ angeboten.[3]Mutexe sind in neueren Versionen vorhanden.[4]
Dem Paket zum Herunterladen liegen fertige Konfigurationen für diverseArchitekturen und diverse Compilerumgebungen bei. Weiterhin liegen diverse Demos (z. B. einIP-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.
UnterstützteProzessorarchitekturen:
FreeRTOS stand unter einer modifiziertenGPL. Die Modifikation schränkt die Nutzung von FreeRTOS ein (z. B. dürfen keine Benchmarkergebnisse veröffentlicht werden), womit FreeRTOS keineFree/Libre Open Source Software war. Durch die Modifikation der GPL brauchte unter FreeRTOS laufende Applikationssoftware nicht auch unter die GPL gestellt zu werden, wodurch sich das Betriebssystem auch für nichtfreie Projekte eignete. Bedingungen waren, dass der Endanwender von der FreeRTOS-Nutzung informiert wird, falls Quellcode verbreitet wird, und dass der Quellcode vom evtl. bearbeiteten RTOS-Kernel herausgegeben werden musste.[5]
Seit Version 10, die 2017 veröffentlicht wurde, steht die Software unter derMIT-Lizenz.[6]
Als ergänzendes Produkt zu FreeRTOS wurdeSafeRTOS entwickelt: Bei ansonsten gleicher Funktionalität beinhaltet es sicherheitskritische Ergänzungen. Das FreeRTOS-Funktionsmodell wurde dazu einemPAAG-Verfahren unterzogen und dabei identifizierte Schwächen sowohl im Funktionsmodell als auch in der API beseitigt. Die daraus resultierenden Anforderungen wurden demIEC61508 SIL3-Entwicklungszyklus unterzogen – dem für eine Softwarekomponente anspruchsvollsten Zyklus. SafeRTOS ist vomTÜV Süd bisSicherheitsanforderungsstufe SIL 3 zertifiziert.
AlsOpenRTOS wird der FreeRTOS-Code mit kommerzieller technischer Unterstützung angeboten.