|Written in||C, C++, assembly|
|OS family||Real-time operating systems|
|Source model||Open source|
|Latest release||10.2.0 / November 23, 2021|
|Marketing target||Embedded systems|
|Platforms||ARM, AVR, AVR32, HCS12, LM32, MIPS, RISC-V, SuperH, Xtensa, x86, x86-64, Z80|
|Kernel type||Real-Time Microkernel|
|License||Apache License 2.0|
NuttX is a real-time operating system (RTOS) with an emphasis on technical standards compliance and small size. Scalable from 8-bit to 64-bit microcontroller environments, the main governing standards in NuttX are from the Portable Operating System Interface (POSIX) and the American National Standards Institute (ANSI). Further standard application programming interfaces (APIs) from Unix and other common RTOSes (such as VxWorks) are adopted for functions unavailable under these standards, or inappropriate for deeply embedded environments, such as the fork() system call.
NuttX was first released in 2007 by Gregory Nutt as free and open-source software under the permissive BSD license. Since December 2019, it has been undergoing incubation at The Apache Software Foundation.
NuttX is written almost exclusively in the programming language C and uses Kconfig to configure and generate GNU makefiles for the system. The program distribution combines the kernel and a substantial amount of middleware and code for board support and device drivers. The kernel and much of the other code was written by the original author, Gregory Nutt. He maintains the source code exclusively, and must approve all community contributions.