Académique Documents
Professionnel Documents
Culture Documents
●
Enjeux et problématique des OS temps réel
●
Ordonnancement
●
Services (messagerie, partage de
ressources, timers)
●
Gestion des interruptions
●
Implantation matérielle (FreeRTOS)
●
Comment garantir les échéances de tâches
Problématiques indépendantes ?
●
Comment gérer les ressources communes ?
Un système est dit critique si son fonctionnement met en jeu la vie de personnes.
Exemple : voiture, avion, refroidissement d’une centrale nucléaire…
Dans un système critiques, certaines échéances de tâches sont critiques (la boucle
de régulation ABS du freinage), d’autres non (la mesure de la température du
moteur).
Les systèmes non critiques (équipements réseau par exemple) peuvent souvent se
suffirent de temps réel souple.
Périph.
Périph. de
Hardware Mémoire CPU Interruptions d’entrées
comm
sorties
Microcontrôleur
09/2018 Informatique embarquée - OS temps réel 6
Le marché des OS temps réels
●
Un OS utilise les fonctions de la CPU. Il est qualifié pour certaines cibles.
●
Exemples :
– VxWorks, Lynx, QNX, normalisés POSIX (une normalisation IEEE des
communications entre composants logiciels (services temps réels
notamment)
– Linux-rt (Un patch linux rendant notamment le noyau préemptible)
– Xenomai : un noyau temps réel parallèle à Linux
Extrait de la
documentation
Extrait de la documentation Vx-Works Xenomai
Résultat d’un
sondage effectué
auprès de 1234
ingénieurs dans le
domaine des objets
connectés.
L'ordonnancement est un système de file d'attente basé sur les Sémaphores et les Mutex. Il
est basé sur le modèle Round-Robin avec gestion des priorités.
Services :
Sémaphores binaires et compteurs,
Timer soft
Synchronisation entre tâches (Queue)
Vérification de débordement de pile
Gestion des interruptions
Des versions avec support (et payantes) et des versions certifiées existent
Allocation
dynamique
Tâche Task
Système d’exploitation Operating system
Pile Stack
Tas Heap
Sémaphore Semaphore
Temps réel dur Hard Real Time
Temps réel souple Soft Real Time
Ordonnanceur Scheduler