-
Chapitre 1 : Généralités sur les systèmes d’exploitation
- Rappels sur l'architecture d'un ordinateur.
- Place du système d'exploitation dans l'ordinateur.
- Définition du système d'exploitation,
- caractéristiques.
- Introduction de la structure en couches d'un système d'exploitation.
-
Notions :
- Instruction,
- Macro instruction,
- Programme,
- Processus,
- Fonction
-
Chapitre 2 : Introduction aux systèmes temps réel
- Définition d’un système temps réel.
- Contraintes temps réel. Spécifications.
- Classification des systèmes temps-réel.
- Caractéristiques,
- Structure d’un système de commande.
-
Chapitre 3 : Gestion des tâches. Ordonnancement et temps réel
- Définition des types de tâches (graphe des états des tâches gérées par un noyau temps réel).
- Opérations sur les processus (Création, Destruction, Suspension, ...).
- Gestions des tâches (partage du processus, algorithmes d'ordonnancement préemptif et non préemptif, définition de quelques algorithmes d'ordonnancement : FCFS, SJF, …),
- Bloc de Contrôle des processus PCB
-
Chapitre 4 : Gestion de la mémoire (02 semaines)
- Gestion de mémoire virtuelle (pagination, segmentation, cache).
- Gestion de la mémoire physique (Définition, adressage, politiques (algos) d'allocation, (FF, BF, WF, …)
-
Chapitre 5 : Gestion du parallélisme et communication entre processus
- Présentation des méthodes et outils de solution pour les problèmes de compétition,
- coopération,
- synchronisation basée sur les sections et ressources critiques,
- l’exclusion mutuelle,
- les contraintes à respecter.
- Présentation du Sémaphore,
- les moniteurs,
- Exemple de problème de synchronisation classique (Problème producteur-consommateur).
- Communication entre processus (Tubes, tubes nommés, ...)
-
Chapitre 6 : Programmation (03 semaines)
-
Introduction à la Programmation concurrente :
- Gestion des aspects multitâches,
- Exclusion mutuelle,
- Synchronisation,
- Communication ;
- Programmation temps réel (Langage temps réel : OSA, JAVA2 temps réel, ADA, Modula2, …).
-
Exemples d’applications.
-
Introduction à la Programmation concurrente :