Dans votre voiture, votre maison ou même votre poche : les systèmes embarqués sont partout ! Le logiciel a pris le pas sur du matériel pour des raisons évidentes : facilités de développement, flexibilité (mise à jour, correctifs), les avantages de migrer des fonctions du matériel vers le logiciel sont évidents. Au fil des années, le matériel embarqué est devenu si puissant qu'on ne considère plus les ressources comme limitées. Ainsi, les différences entre des machines de bureau et embarquées s'amenuisent et amènent les développeurs à déployer les mêmes systèmes d'exploitation sur ces plates-formes.Cependant, au-delà du seul aspect performance, certains systèmes requièrent des services spécifiques, en particulier lorsque la réussite d'une mission ou la survie est en jeu. Ces exigences peuvent être diverses (temporelles - déterminisme de l'ordonnancement ou spatiales - consommation d'espace mémoire, couverture de code) mais toutes ont une importance capitale. Au cours de cet article, nous allons présenter les services et standards en vigueur dans le domaine et détailler leurs API.
1. Introduction
1.1 Architecture et propriétés d'un OS temps réel
Contrairement à ceux utilisés dans les machines traditionnels, les OS dédiés aux systèmes embarqués et/ou temps réel (RTOS – Real Time Operating System) reposent sur des architectures particulières. On trouve principalement deux grandes familles : les OS utilisant une architecture plus traditionnelle autour d'un noyau et les exécutifs.
L'architecture reposant sur un noyau isole les applications dans des processus (ou parfois les partitions) et utilise les différents modes de privilèges du processeur si possible pour différencier l'exécution du code noyau et du code applicatif. Ainsi, sur les processeurs intel, le noyau utilise le mode privilégié (appelé RING 0) alors que le code applicatif est exécuté dans un mode restreint (bien souvent le RING 3 sur les processeurs x86) où certaines opérations sont interdites.
À l'inverse, un exécutif assemble les instructions de l'OS et de...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première