Libellé du cours : | Systèmes temps réels |
---|---|
Département d'enseignement : | EEA / Electronique Electrotechnique Automatique |
Responsable d'enseignement : | Monsieur ALEXANDRE KRUSZEWSKI |
Langue d'enseignement : | |
Ects potentiels : | 0 |
Grille des résultats : | Grade de A+ à R |
Code et libellé (hp) : | SEI_SEC_STR - Systèmes temps réels |
Equipe pédagogique
Enseignants : Monsieur ALEXANDRE KRUSZEWSKI / Monsieur SAMIR EL KHATTABI
Intervenants extérieurs (entreprise, recherche, enseignement secondaire) : divers enseignants vacataires
Résumé
Ce cours se propose une introduction à la conception des applications informatiques temps-réel. Ces applications seront abordées dans le cadre d’un système multitâches comme UNIX/Linux. A cet effet, la programmation système (concurrente) est abordé en premier lieu, en donnant les limites temps-réel. Dans un deuxième temps, les aspects temps réel seront abordées à travers la mesure et la précision du temps ; l’ordonnancement et l’affectation des tâches ; les signaux et le déclenchement des tâches ; Notions liées à l’architecture d’un système d’exploitation monolithique et multitâches Architecture : matériel, noyau - pilotes, bibliothèques (appels système), SHELL Multiprogrammation, commutation, segmentation mémoire, partage de ressources, droits d’accès, modes d’exécution & protection. Implémentations UNIX (SysV – BSD – GNU) et POSIX Processus & ordonnancement Gestion de priorité et politiques d’ordonnancement Modèle mémoire d’un processus Création/finalisation de processus par clonage Exécution par recouvrement mémoire (substitution) Threads Signalisation d’un système d’exploitation Notion de signal & interruption (matérielle & logicielle) Notion de masque de signaux Déroutement de traitement Synchronisation de processus & Interblocages Notion de ressource Modèles IPC : Exclusion mutuelle - Synchronisation - Production & consommation Implémentation par sémaphores Interblocages & stratégies de traitements Mémoire partagée Partage Accès concurrents Temps-réel Ordonnancement temps réel Temps : Horloge, mesure, précision/granularité, affinité Déclenchement de tâches sur signaux temps réel Tâches périodiques Inversion de priorité
Objectifs pédagogiques
À l’issue du cours, l’élève sera capable de : • Comprendre les fondements de base des systèmes d’exploitation centralisés • Respecter les contraintes de la programmation système POSIX, dans un environnement UNIX • Appréhender un système par la programmation de ces composants : processus, appels systèmes – instruction/interruption, signaux, sémaphores, threads, … • Concevoir une application multiprocessus ou multithreads avec accès concurrents. • Intégrer les contraintes temporelles dans la conception des solutions réparties ou distribuées.
Objectifs de développement durable
Modalités de contrôle de connaissance
Contrôle Continu
Commentaires: Évaluation des travaux pratiques
Ressources en ligne
Pédagogie
Séquencement / modalités d'apprentissage
Nombre d'heures en CM (Cours Magistraux) : | 16 |
---|---|
Nombre d'heures en TD (Travaux Dirigés) : | 20 |
Nombre d'heures en TP (Travaux Pratiques) : | 8 |
Nombre d'heures en Séminaire : | 0 |
Nombre d'heures en Demi-séminaire : | 0 |
Nombre d'heures élèves en TEA (Travail En Autonomie) : | 0 |
Nombre d'heures élèves en TNE (Travail Non Encadré) : | 0 |
Nombre d'heures en CB (Contrôle Bloqué) : | 0 |
Nombre d'heures élèves en PER (Travail PERsonnel) : | 0 |
Nombre d'heures en Heures Projets : | 0 |