NuttX ist ein Echtzeitbetriebssystem (RTOS) mit Schwerpunkt auf der Einhaltung von technischen Standards und geringer Größe, skalierbar für 8-bit- bis 64-bit-Mikrocontroller-Umgebungen.[2] Die wichtigsten Standards in NuttX stammen aus dem Portable Operating System Interface (POSIX) und dem American National Standards Institute (ANSI). Weitere Standard-Anwendungsprogrammierschnittstellen (APIs) von Unix und anderen gängigen RTOS (z. B. VxWorks) werden für Funktionen übernommen, die unter diesen Standards nicht verfügbar sind oder für tief eingebettete Umgebungen ungeeignet sind, wie z. B. fork.[2]

NuttX
Entwickler Gregory Nutt
Lizenz(en) Apache-Lizenz 2.0
Akt. Version 12.7.0[1] vom 30. Oktober 2024
nuttx.apache.org

NuttX wurde erstmals 2007 von Gregory Nutt als freie und quelloffene Software unter der permissiven BSD-Lizenz veröffentlicht. Seit Dezember 2019 befindet es sich in der Inkubation bei der Apache Software Foundation.[3]

Implementierung

Bearbeiten

NuttX ist fast ausschließlich in der Programmiersprache C geschrieben und verwendet Kconfig zur Konfiguration und Generierung von GNU makefiles für das System. Die Programmdistribution kombiniert den Kernel und eine beträchtliche Menge an Middleware und Code für Board-Unterstützung und Gerätetreiber. Der Kernel und ein Großteil des anderen Codes wurde vom ursprünglichen Autor Gregory Nutt geschrieben.

Hauptmerkmale

Bearbeiten

Die Hauptcharakteristika von NuttX sind:[2]

Unterstützte Plattformen

Bearbeiten

Die NuttX-Website listet alle unterstützten Plattformen nach Prozessorarchitektur sowie nach Hersteller/Mikrocontrollerfamilie auf.[4] Zu den unterstützten Prozessorarchitekturen zählen:

Projekte, die NuttX verwenden

Bearbeiten
  • Die Thingsee IoT-Gateway-Geräte von Haltian verwenden das Betriebssystem ThingseeOS, das auf NuttX basiert.[5]
  • Der PX4-Autopilot nutzt NuttX zur Steuerung einer Vielzahl autonomer Plattformen.[6]
  • Biffer Board unterstützt viele RTOSs, darunter NuttX.[7]
  • MP3-Player implementiert mit NuttX[8]
  • OsmocomBB nutzt NuttX, um ein Betriebssystem für Handys zu entwickeln[9]
  • Ein selbstentwickeltes Steer-by-Wire-System, das mit NuttX implementiert wurde[10]
  • Das Motorola Moto Mods Development-Kit basiert auf NuttX.[11]
  • Sony verwendet NuttX in seinen Audioprozessoren[12]
  • Samsungs Tizen RT basiert auf NuttX[13]
  • Xiaomi lancierte im November 2020 die IoT-Software-Plattform Xiaomi Vela, die auf NuttX basiert.[14]

Einzelnachweise

Bearbeiten
  1. Release 12.7.0. 30. Oktober 2024 (abgerufen am 24. November 2024).
  2. a b c About Apache NuttX. In: nuttx.apache.org. Abgerufen am 24. August 2021.
  3. Apache NuttX (Incubating). incubator.apache.org, archiviert vom Original (nicht mehr online verfügbar) am 29. April 2021; abgerufen am 29. April 2021.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/incubator.apache.org
  4. Supported Platforms. In: nuttx.apache.org. Archiviert vom Original (nicht mehr online verfügbar) am 28. Juli 2022; abgerufen am 24. August 2021.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/nuttx.apache.org
  5. Thingsee Devices. Abgerufen am 25. August 2021.
  6. Autopilot PX4. Abgerufen am 25. August 2021.
  7. Bifferboard. Abgerufen am 22. November 2012.
  8. Nuttx spielt MP3 in Detron Board. Abgerufen am 22. November 2012.
  9. OsmocomBB. Abgerufen am 22. November 2012.
  10. A Homebrew Steer-by-Wire System. Abgerufen am 22. November 2012.
  11. Modular Moto Z Android phone supports DIY and RPi HAT add-ons. Abgerufen am 25. August 2021.
  12. Developing Audio Products with Cortex-M3/NuttX/C++11. (PDF) Archiviert vom Original (nicht mehr online verfügbar) am 20. Januar 2017; abgerufen am 20. Januar 2017.
  13. Tizen RT. Abgerufen am 21. Februar 2017.
  14. Xiaomi launches a new IoT Software Platform “Xiaomi Vela” based on NuttX OS. Abgerufen am 25. August 2021.