NuttX

NuttX
sistema operativo
Logo
Logo
SviluppatoreGregory Nutt
FamigliaSistema operativo real-time
Release corrente12.11.0 (5 ottobre 2025 )
Tipo di kernelRTOS, Microkernel
Piattaforme supportateARM, AVR, AVR32, HCS12, LM32, MIPS, RISC-V, SuperH, Xtensa XL6, Z80
LicenzaApache License 2.0
Stadio di sviluppostabile
Sito webnuttx.apache.org/

NuttX è un sistema operativo real-time (RTOS) Free and Open Source Software (FOSS) molto compatto ed efficiente progettato per applicazioni embedded. Il sistema supporta diverse architetture è scalabile per microcontrollori da 8-bit a 32 bit, gli standard di riferimento principali in NuttX sono gli standard POSIX e ANSI. Ulteriori API standard da Unix e altre comuni RTOS (come VxWorks ) vengono adottate per funzionalità non disponibili in questi standard o per funzionalità che non sono appropriate per ambienti profondamente integrati, come fork ().

NuttX è stato pubblicato nel 2007 da Gregory Nutt sotto la licenza BSD. Da dicembre 2019 è entrato a far parte del progetto Incubator di Apache Software Foundation, data in cui l'intero progetto ha iniziato a essere distribuito sotto la Apache License 2. Da novembre 2022 Apache NuttX è passato da progetto Incubator a progetto di primo livello (TPL).

Il Kernel supporta una varietà di meccanismi come: multithreading, timer software, semafori, mutex, variabili condizionali, messaggi, sorgenti di evento, code, I/O sincrono o asincrono con possibilità di timeout.

Caratteristiche principali

Piattaforme supportate

File system

 Separato linked ELF modules
 Separato linked NXFLAT modules. NXFLAT è un formato binario che può essere XIP da un file system

C/C ++ library

Networking

Supporto Flash

Supporto USB

Supporto per host USB

  • Architettura host USB per driver di controller host USB e driver di classe USB dipendenti dal dispositivo.
  • Driver del controller host USB disponibili per il Atmel SAMA5Dx, NXP LPC17xx, LPC31xx, e STMicro STM32.
  • Driver di classe USB dipendenti da dispositivo disponibili per l'archiviazione di massa USB e tastiera HID.

Supporto per dispositivi USB

  • Architettura Gadget-like per i driver di controller USB e driver di classe USB dipendenti dalla periferica
  • Driver del controller dispositivo USB disponibili per il PIC32, Atmel AVR, SAM3, SAM4, e SAMA5Dx, NXP LPC17xx, LPC214x, LPC313x, e LPC43xx, Silicio Laboraties EFM32, STMicro STM32 F1, F2, F3, F4 e, e TI DM320.
  • Driver di classe USB dipendenti da dispositivo disponibili per USB e seriale per archiviazione di massa USB.
  • Funzionalità incorporata USB per il debug USB.

Supporto grafico

Progetti che utilizzano NuttX

Note

  1. ↑ NuttX-12.11.0 Released, su nuttx.apache.org. URL consultato il 5 ottobre 2025.
  2. ↑ NuttX-11.0.0, su news.apache.org.

Collegamenti esterni

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica