RIOT (sistema operativo)
# RIOT (sistema operativo)

RIOT es un sistema operativo pequeño para networked, sobre sistemas con memoria limitada con un enfoque específico sobre dispositivos de Internet de las Cosas (IoT por sus síglas en íngles). Es software de fuente abierta , liberado bajo el GNU Lesser General Public License (LGPL).

## Historia

Fue inicialmente desarrollado por Freie Universität Berlina (FU Berlín), Institut nacional de recherche en informatique et en automatique (INRIA) y el Hochschule für Angewandte Wissenschaften Hamburgo (HAW Hamburgo). RIOT es un kernel mayoritariamente heredado de FireKernel, el cual era originalmente desarrollado para redes de sensor.

## Aspectos técnicos

RIOT está basado en arquitectura de microkernel. En contraste a otros sistemas operativos similares en el uso de memoria baja (como TinyOS o Contiki), RIOT deja programación de aplicación con los lenguajes de programación C y C++. También está disponible una API de Rust experimental. Trabaja de lleno en tareas multithreading y capacidades de tiempo real. SSL/TLS y se mantiene con bibliotecas populares como wolfSSL.

RIOT corre encima 8-bit (como AVR Atmega), 16-bit (como TI MSP430) y 32-bit (como ARM Cortex) procesadores. Un puerto nativo también habilita RIOT para correr procesos en Linux o macOS, habilitando uso de desarrollo estándar y depurando herramientas como GNU Colección de Compilador (GCC), GNU Depurador, Valgrind, Wireshark etc. RIOT es en parte Interfaz de Sistema operativo Portátil (POSIX) compliant. RIOT proporciona una red múltiple stacks, incluyendo IPv6, 6LoWPAN, o contenido centric networking y protocolos estándares como RPL, Protocolo de Datagrama del Usuario (UDP), Protocolo de Control de la Transmisión (TCP), y CoAP.

## Código de fuente

Código de fuente del RIOT es disponible en GitHub, y desarrollado por una comunidad internacional de desarrolladores de código abierto.

