Description
À la fin de cette formation, vous serez capable de sélectionner la solution temps réel la plus adaptée pour Linux et de concevoir des applications temps réel en vous appuyant sur Linux-RT, Xenomai ou des architectures intégrant des hyperviseurs temps réel.
À qui s'adresse cette formation ?
Pour qui ?
Architecte, développeur désireux d'utiliser Linux et la sécurité d'un OS temps réel standard ou bien réaliser des gains de production en faisant cohabiter pile 3G+ et machine Java sur le même chip.
Prérequis
Aucun
Les objectifs de la formation
- Comprendre les principes fondamentaux des systèmes temps réel
- Identifier les différentes solutions temps réel disponibles sous Linux (Linux-RT, Xenomai, hyperviseurs)
- Comparer les avantages et limites de chaque solution
- Savoir choisir la solution la plus adaptée selon les besoins d’un projet
- Développer et tester des applications temps réel sous Linux
- Maîtriser les outils et techniques de programmation temps réel
- Appréhender les architectures basées sur des hyperviseurs temps réel
Programme de la formation
- Présentation des architectures temps réel sous Linux
- Étude de l’historique et de l’évolution du noyau Linux
- Analyse de la latence dans différentes configurations : Linux standard (Vanilla), Patch RT, ainsi que les solutions Timesys et Montavista
- Introduction aux nano-noyaux et au concept de virtualisation des interruptions
- Présentation des principes et de l’évolution des nano-noyaux tels que RTLinux et RTAI
- Exploration de la virtualisation des interruptions à travers ADEOS et Xenomai
- Historique et fonctionnement des hyperviseurs temps réel
- Découverte des outils libres liés aux architectures micro-noyaux, notamment L4Ka et Pistachio
- Étude des projets OKL4 et XtratuM dans le domaine des systèmes temps réel
- Temps réel sous Linux et Linux-rt
- Présentation de Linux Vanilla (noyau standard)
- Étude de ses fonctionnalités, ainsi que de ses avantages et limites dans un contexte temps réel
- Introduction aux API pour le développement d’applications temps réel sous Linux Vanilla
- Mise en œuvre et intégration du patch temps réel (Patch RT)
- Développement d’applications temps réel en utilisant Linux-RT
- Initiation au développement de pilotes (drivers) pour Linux-RT
- Travaux pratiques : installation et configuration du patch RT
- Travaux pratiques : conception d’une application temps réel sous Linux Vanilla et Linux-RT
- Domaines ADEOS et Xenomai
- Mise en œuvre et application du patch ADEOS
- Développement d’applications basées sur ADEOS
- Intégration et utilisation du patch Xenomai
- Développement d’applications temps réel avec Xenomai
- Conception de pilotes (drivers) pour Xenomai
- Travaux pratiques : réalisation d’un outil de traçage avec ADEOS
- Travaux pratiques : développement d’une application temps réel sous Xenomai
- Hyperviseurs temps réel
- Mise en œuvre et configuration de OKL4
- Configuration et utilisation de L4Linux
- Présentation de XtratuM et gestion des domaines (partitions)
- Mécanismes de communication entre domaines
- Étude de l’interface applicative de XtratuM, des ordonnanceurs (schedulers), de la gestion mémoire et des mécanismes de synchronisation
- Travaux pratiques : installation d’un hyperviseur (XtratuM et Partikle ou L4 avec L4Linux)
- Travaux pratiques : développement d’une mini application temps réel
- Hyperviseurs temps réel et virtualisation du matériel
- Techniques de virtualisation du matériel Intel et AMD : utilisation de VT-x pour la virtualisation.
- Exemple de Xen, limitations sur le temps réel.
- VLX : un hyperviseur temps réel commercial pour Intel et ARM.
