Skip to content

Latest commit

 

History

History
231 lines (226 loc) · 15.7 KB

rtos.md

File metadata and controls

231 lines (226 loc) · 15.7 KB
<title>rtos</title>

RTOS pour K8

Introduction

Microcontrolleur de référence

Comparaison RTOS

Autre listing

Tableau de comparaison RTOS / Features

FEATURES/OS “Baremetal” FreeRTOS ARM Mbed RIOT Linux Contiki TinyOS Nucleus OS
RT ~ v v v ~ v
HAL ~ (freertoshal.github.io)[http://freertoshal.github.io/] v v
Modulaire ~ ? v v v ?
Multi-thread ~ v X (event-driven) v v
C ~ v v v ~
C++ ~ ? v v
min ROM ~ ? < 5-10ko ? ~1.5ko ~1mo <2ko <1ko ?
min RAM ~ <1ko ~5ko ~1mo <2ko <1kb ?
Lib Bacnet bacnet-stack MS/TP, TODO bacnet-stack MS/TP + I/P TODO uBacStack ? ? ? ? ?
Lib SSL ? WolfSSL ? WolfSSL WolfSSL (alpha) wolfssl, openssl, openssh, … ? WolfSSL WolfSSL
Lib CoAP ? ? nanocoap, gcoap, lib-coap lib-coap lib-coap ? ?
Licence MIT LGPLv2.1

FreeRTOS

Architecture

  • task.c& task.h
  • queue.c& queue.h
Task states
vTaskResume() called
vTaskSuspend() called
vTaskSuspend() called
event
vTaskSuspend() called
suspended
Ready
Running
Blocked

Libs

Cartes d’évaluation
PORTs Compilateur
ATMEL SAMD20 Atmel Studio + GCC
Kinetis ARM Cortex-M0+ GCC - Eclise - CodeWarrior
XMC1000 ARM Cortex-M0 IAR, Keil and GCC (using Atollic Eclipse project)
NXP LPC1114 LPCXpresso GCC, LPCXpresso IDE
STM32F0 ARM Cortex-M0 IAR

Articles d’intérêt

Critères importants

  • Modularité
  • Connectivité et interopérabilité, ex : POSIX

TinyOS et Contiki : non temps réels, très utilisés dans les réseaux de capteurs sans fils. FreeRTOS : pas de HAL … RIOT mise en avant pour sa programmiblité, efficacité énergétique. Référence à des librairies intégrées don CBOR qui pourrait concurrencer/supplenter le WOD http://cbor.io

Technologies rencontrées

CBOR

Un format compact d’échange pour remplacer JSON dans des projets IoT, normé par l’IEFT.