Developer | Free University of Berlin French Institute for Research in Computer Science and Automation Hamburg University of Applied Sciences |
---|---|
OS family | POSIX |
Working state | Current |
Source model | Open source |
Initial release | 23 October 2009 |
Latest release | 2024.04[1] / 7 May 2024 |
Repository | |
Marketing target | Embedded systems |
Available in | English |
Platforms | TI MSP430, ARM7, ARM Cortex-M0-M0+-M3-M4, Atmel AVR, MIPS32r2, RISC-V |
Kernel type | Microkernel real-time |
License | LGPLv2 |
Preceded by | FireKernel |
Official website | riot-os |
RIOT is a small operating system for networked, memory-constrained systems with a focus on low-power wireless Internet of things (IoT) devices. It is open-source software, released under the GNU Lesser General Public License (LGPL).
It was initially developed by Free University of Berlin (FU Berlin), French Institute for Research in Computer Science and Automation (INRIA) and the Hamburg University of Applied Sciences (HAW Hamburg). RIOT's kernel is mostly inherited from FireKernel,[2] which was originally developed for sensor networks. In 2015, one of the co-developers, Matthias Wählisch was awarded the Young Scientist Award of the Forum for Excellent Young Scientists for the contributions of his team to the open source operating system RIOT.[3] In 2016, the ED STIC Doctoral Prize 2017 of the University of Paris-Saclay was awarded to another co-founder, Oliver Hahm for his contribution to the project. [4]
RIOT is based on a microkernel architecture.[5] In contrast to other operating systems with similarly low memory use (such as TinyOS or Contiki), RIOT allows application software programming with the programming languages C and C++, and Rust,[6] also by an experimental application programming interface (API).[7] It has full multithreading and real-time abilities.[8] Secure Sockets Layer (SSL) and successor Transport Layer Security (TLS) are supported by popular libraries such as wolfSSL.[9]
RIOT runs on processors of 8 bits (such as AVR Atmega), 16 bits (such as TI MSP430), and 32 bits (such as ARM Cortex).[10] A native port also enables RIOT to run as a Linux or macOS process, enabling use of standard developing and debugging tools such as GNU Compiler Collection (GCC), GNU Debugger, Valgrind, Wireshark, etc. RIOT is partly Portable Operating System Interface (POSIX) compliant.
RIOT provides multiple network stacks,[11] including IPv6, 6LoWPAN, or content centric networking and standard protocols such as RPL,[12] User Datagram Protocol (UDP), Transmission Control Protocol (TCP), and CoAP.
RIOT source code is available on GitHub, and developed by an international community of open source developers.
{{cite web}}
: Missing or empty |title=
(help)