ECTS
3,5 crédits
Composante
POLYTECH 2026-2027
Description
Ce cours comporte deux parties : les systèmes temps réels d'une part et la mise en oeuvre d'un noyau Linux pour l'électronique embarquée de l'autre.
La première partie explique comment exécuter plusieurs tâches sur un microcontrôleur, tout en vérifiant que chacune d'entre elles puisse se terminer avant une échéance donnée par un cahier des charges.
la seconde partie permet de concevoir entièrement (compilation et configuration) un noyau Linux pour un processeur embarqué. Les étudiants partent d'un cahier des charges et réalisent une application complète basée sur un noyau Linux.
Objectifs
Savoir définir les taches que doit réaliser un programme
Savoir organiser les taches les unes par rapport aux autres (priorités, synchronisation, accès aux ressources)
Savoir faire communiquer les tâches entre elles
Concevoir un noyau Linux en prenant en compte les ressources limitées d'un système.
Comprendre les modules nécessaires à ajouter à un noyau Linux pour son fonctionnement.
Heures d'enseignement
- CMCours Magistral20h
- TPTravaux Pratiques28h
Plan du cours
Partie 1 : OS Temps réel
- La différence entre un système d'exploitation classique et un système d'exploitation temps réel
- Le système d'exploitation Temps réel FreeRTOS/ Zephyr
- La sécurisation de l'accès aux ressources logicielles et matérielles
- Les mécanismes pour synchroniser les tâches entre elles
Partie 2 : Noyau Linux pour l'embarqué
-
Qu'est-ce qu'un système d'exploitation Linux ?
-
Comment compile-t-on un noyau Linux ?
-
Quels sont les modules du noyau Linux ?
-
Comment accéder aux périphérique matériel depuis un noyau Linux ?
-
Comment crée-t-on une application pour un noyau Linux ?