Matière : Système d'exploitation 1
Unité d’enseignement fondamentale : UEF1
Crédits : 5
Coefficient : 3
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 Programme.
- Notion de Processus.
- Notion de Thread.
- Notion de ressource
- Notion de travail (Job)
- Différents états d’un processus.
- Hiérarchies de processus.
- 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 (ShortestRemaining Time).
- Algorithme avec priorité.
Chapitre 3 : Gestion de la mémoire
- Objectifs.
- Monoprogrammation.
- Multiprogrammation :
- a) Partitions multiples contigües.
- Partitions contiguës fixes.
- Partitions contiguës dynamiques:
- Stratégie du premier qui convient (First Fit)
- Stratégie du meilleur qui convient (Best Fist)
- 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 virtuelle.
- 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 RecentlyUsed).
- - Fréquenced’utilisation (LFU: Least Frequently Used).
- - Algorithme de la seconde chance.
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
- A. Tanenbaum, Systèmes d’exploitation, Dunod, 1994.
- Michel Divay, Unix, Linux et les systèmes d'exploitation : cours et exercices corrigés , Dunod, collection : Sciences sup, 2004.
- Crocus, Systèmes d'exploitation des ordinateurs, Dunod,1993.
- Sacha Krakowiak, Principes des systèmes d'exploitation des ordinateurs, Dunod, 1993