|
|
|
|
|
|
|
ac6 >> ac6-training >> Systèmes d'Exploitation >> Linux >> Programmation Temps-Réel et Multi-Core |
RT1 | Programmation Temps-Réel et Multi-Core |
Objectifs
|
Exercise : | Installation de l'environnement de développement sur le système hôte (si nécessaire) | |
Exercise : | Installation de l'environnement d'exécution sur la cible | |
Exercise : | Création d'une routine de changement de contexte |
Exercise : | Construction d'un gestionnaire de listes chaînées génériques utilisable en environnement parallèle |
Exercise : | Écriture d'un gestionnaire de mémoire système simple utilisant l'algorithme "buddy" |
Exercise : | Écriture d'un gestionnaire de mémoire générique, multi-niveau |
Exercise : | Amélioration du gestionnaire de mémoire pour la détection d'erreurs mémoire |
Exercise : | Amélioration de la commutation de contexte pour surveiller l'utilisation de la pile |
Exercise : | Écriture d'un ordonnanceur simple, à priorités fixes |
Exercise : | Écriture d'un gestionnaire d'interruption simple |
Exercise : | Extension de l'ordonnanceur pour supporter un ordonnancement en ronde (round-robin) |
Exercise : | Écriture d'un spinlock |
Exercise : | Étude d'un ordonnanceur multicoeurs |
Exercise : | Mise en œuvre des sémaphores par interaction directe avec l'ordonnanceur |
Exercise : | Mise en œuvre du mécanisme de mutex |
Exercise : | Vérifier la bonne imbrication des mutex récursifs et l'utilisation de mutex non récursifs |
Exercise : | Mise en place du mécanisme de plafond de priorité |
Exercise : | Ajout du support des variables condition aux mutex |
Exercise : | Le problème "producteur-consommateur", ou une illustration d'accès concurrents et sa solution |
Exercise : | Le problème du "dîner des philosophes", illustration des risques de deadlocks, livelocks et de famine |
Exercise : | Résolution du problèmes des lecteurs et des écrivains avec des threads POSIX |
Exercise : | Maintient de statistiques par thread pour le problème des lecteurs et écrivains |
Exercise : | Création d'un mécanisme de barrière d'exécution à partir des primitives de synchronisation du noyau Linux |
Exercise : | Création d'un évènement de synchronisation, à partir des mécanismes de synchronisation de base |
Exercise : | Envoi de messages entre les cŒurs AMP |