RIOT (operating system)

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).

RIOT
RIOT – The friendly OS for the IoT
OS familyEmbedded operating systems
Working stateCurrent
Source modelOpen source
Latest release2018.04[1] / 11 May 2018 (11 May 2018)
Repository
PlatformsTI MSP430, ARM7, ARM Cortex-M0-M0+-M3-M4, Atmel AVR, MIPS32r2, RISC-V
Kernel typeMonolithic
LicenseLGPLv2
Official websiteriot-os.org

Background

It was initially developed by Freie Universität Berlin (FU Berlin), Institut national de recherche en informatique et en automatique (INRIA) and the Hochschule für Angewandte Wissenschaften Hamburg (HAW Hamburg). RIOT's kernel is mostly inherited from FireKernel,[2] which was originally developed for sensor networks.

Technical aspects

RIOT is based on a microkernel architecture.[3] In contrast to other operating systems with similarly low memory use (such as TinyOS or Contiki), RIOT allows application programming with the programming languages C and C++. An experimental Rust API is also available.[4] It has full multithreading and real-time abilities.[5] SSL/TLS is supported by popular libraries such as wolfSSL.[6]

RIOT runs on 8-bit (such as AVR Atmega), 16-bit (such as TI MSP430) and 32-bit (such as ARM Cortex) processors.[7] A native port also enables RIOT to run as a Linux or macOS process, enabling use of standard development 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,[8] including IPv6, 6LoWPAN, or Content centric networking and standard protocols such as RPL,[9] User Datagram Protocol (UDP), Transmission Control Protocol (TCP), and CoAP.

Source code

RIOT source code is available on GitHub, and developed by an international community of open source developers.

See also

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.