Syllabus des cursus de Centrale Lille

Systèmes temps réels

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:

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

Pré-requis

Nombre maximum d'inscrits

Remarques