„FreeRTOS“ – Versionsunterschied

[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K →‎Verwandte Projekte: Tippfehler entfernt
Zeile 55: Zeile 55:


== Lizenz ==
== Lizenz ==
FreeRTOS steht unter einer leicht modifizierten [[GNU General Public License|GPL]]. Durch die 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. Bedingungen sind, dass der Endanwender von der FreeRTOS-Nutzung informiert wird und dass der Quellcode auf Anfrage herausgegeben werden muss.
FreeRTOS steht unter einer leicht modifizierten [[GNU General Public License|GPL]]. Durch die 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. Bedingungen sind, dass der Endanwender von der FreeRTOS-Nutzung informiert wird falls Quellcode verbreitet wird und dass der Quellcode vom evtl. bearbeiteten RTOS-Kernel herausgegeben werden muss<ref>http://www.freertos.org/a00114.html License Details</ref>.


== Verwandte Projekte ==
== Verwandte Projekte ==

Version vom 27. November 2015, 16:04 Uhr

FreeRTOS
Entwickler Real Time Engineers Ltd.
Lizenz(en) Modifizierte GPL
Erstveröff. 2003
Akt. Version 8.1.2 (2. September 2014)
Kernel Microkernel
www.freertos.org

FreeRTOS ist ein Open-Source-Echtzeitbetriebssystem für eingebettete Systeme. Es basiert auf einer Mikrokernelarchitektur und wurde auf verschiedene Mikrocontroller portiert.

Merkmale

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. „Event Flags“ werden unter der Bezeichnung „Binary Semaphore“ angeboten.[1] Mutexe sind in neueren Versionen vorhanden.[2]

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.

Unterstützte Architekturen

Unterstützte Prozessor-Architekturen:

Weitere beigetragene Portierungen

Lizenz

FreeRTOS steht unter einer leicht modifizierten GPL. Durch die 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. Bedingungen sind, dass der Endanwender von der FreeRTOS-Nutzung informiert wird falls Quellcode verbreitet wird und dass der Quellcode vom evtl. bearbeiteten RTOS-Kernel herausgegeben werden muss[3].

Verwandte Projekte

SafeRTOS wurde als ergänzendes Produkt zu FreeRTOS entwickelt: mit gleicher Funktionalität, aber mit einmalig konzipierten, sicherheitskritischen Umsetzungen. Das FreeRTOS-Funktionsmodell wurde einem PAAG-Verfahren unterzogen, 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. Es ist vom TÜV Süd zertifiziert bis Sicherheitsanforderungsstufe SIL 3.

Als OpenRTOS wird der FreeRTOS-Code mit alternativer Lizenz angeboten. Die OpenRTOS-Lizenz entfernt alle Verweise zur GPL und deren Implikationen. Der RTOS-Kernel darf modifiziert werden, ohne dass der modifizierte Code offengelegt werden muss. Zudem wird OpenRTOS-Anwendern kommerzielle technische Unterstützung angeboten.

Alternativen

Eine (ebenfalls freie) Alternative zu FreeRTOS ist der TNKernel,[4] der über eine vollständige Synchronisations-API verfügt, aber auf weniger Mikrocontroller portiert wurde als FreeRTOS.

Einzelnachweise

  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.freertos.org/a00114.html License Details
  4. http://www.tnkernel.com TNKernel