InitRech 2015/2016, sujet 25
Summary
Riot OS is an OS for the Internet of Things (IoT). We can define the IoT like the network of all the physical devices (including phones, vehicles, sensors, etc.). There should be 50 billion devices in the IoT by 2020. The devices in the IoT can have very few resources, so Riot OS wants to be available for a maximum of devices and exploiting all the resources. An OS for IoT also needs to fulfill the requirements of cyber-physical systems, reliability, real-time behavior and adaptive communication stack.
One of the main concern about the IoT is to have an OS that can run on all the available devices. Furthermore, there is a tradeoff between being developer-friendly (like Linux) and energy-efficient (like TinyOS and Contiki).
RiotOS is based on 3 key design aspects:
- The kernel has a microkernel architecture inherited from FireKernel, for the multi-threading with standard API. He has C support and Riot adds a C++ support and a TCP/IP networks stack, making a developper-friendly OS with high reliability.
-