Objectifs de l’enseignement :
Introduire les notions de base des systèmes d’exploitation, leurs rôles dans la gestion des ressources de la machine : processeur et mémoire centrale puis présenter les mécanismes et les techniques utilisées à ces fins.
Connaissances préalables recommandées :
algorithmique et structures de données, structure machine.
Contenu de la matière :
Chapitre 1 : Introduction
- Notion de système d’exploitation.
- Fonctions et rôles.
- Exemples de systèmes d’exploitation (Windows, Unix, Android,…)
Chapitre 2 : La gestion du processeur
- Définitions
- Notion de
- Notion de
- Notion de
- Notion de ressource
- Notion de travail (Job)
- Différents états d’un
- Hiérarchies de
- Relations entre processus (compétition, coopération et synchronisation).
- Techniques d’ordonnancement de processus :
- Critères (Equité, efficacité, temps de réponse, temps d’exécution, rendement)
- Algorithmes d’ordonnancement (parmi les plus utilisés) :
- Tourniquet (Round Robin RR).
- Algorithme du premier entré, premier servi ou FCFS (First Come First-Served).
- Algorithme du travail le plus court d’abord ou SJF (Shortest Job First).
- Algorithme du temps restant le plus court ou SRT (Shortest Remaining Time).
- Algorithme avec priorité.
Chapitre 3 : Gestion de la mémoire
- Objectifs
- Nonoprogrammation
- Multiprogrammation :
- Partitions multiples contigües.
- Partitions contiguës
- Partitions contiguës dynamiques:
- Stratégie du premier qui convient (First Fit) 2- Stratégie du meilleur qui convient (Best Fist) 3- Stratégie du pire qui convient (Worst Fit).
- Partitions contiguës Siamoises (Buddy system)
- Ré-allocation et protection
- Va et vient (Swap)
- Fragmentation et Compactage
- Multiprogrammation et partitions multiples non contigües
- Pagination
- Segmentation
- Segmentation paginée.
- La mémoire virtuelle
- Concept de mémoire
- Overlays (segments de recouvrement)
- Pagination à la demande
- Quelques algorithmes de remplacement des pages :
-Algorithme optimal
-Remplacement Aléatoire
-Ordre Chronologique de Chargement (FIFO) (avec remarque sur l’anomalie de Belady).
- Ordre Chronologique d’utilisation (LRU: Least Recently Used).
- Fréquence d’utilisation (LFU: Least Frequently Used).
- Algorithme de la seconde
Chapitre 4 : Le système Unix. Travaux dirigés et pratiques
Les TDs porteront sur propositions d’algorithmes autour des différents chapitres. Ces algorithmes seront
développés en TP en utilisant le langage au langage C sous Unix. Le système Unix fera l’objet des premières séances de TPs.
Mode d’évaluation : Examen (60%) , contrôle continu (40%)
Références
- Tanenbaum, Modern operating systems, thirth edition, Pearson, 2014
- Tanenbaum, “ystèmes d’exploitation, Dunod, 1994.
- Michel Divay, Unix, Linux et les systèmes d’exploitation : cours et exercices corrigés , Dunod, collection : Sciences sup,
- Crocus, Systèmes d’exploitation des ordinateurs, Dunod,1993. Sacha Krakowiak, Principes des systèmes d’exploitation des ordinateurs, Dunod, 1993