23
Cours Syst` emes d’Exploitation 2 Salah Triki Institut Sup´ erieur d’Informatique et de Gestion de Kairouan 20 septembre 2014

Cours systèmes d'exploitation 2

Embed Size (px)

Citation preview

Page 1: Cours systèmes d'exploitation 2

Cours Systemes d’Exploitation 2

Salah Triki

Institut Superieur d’Informatique et de Gestion de Kairouan

20 septembre 2014

Page 2: Cours systèmes d'exploitation 2

� Auditoire : 2eme annee License Fondamentale en SciencesInformatique

� Semestre : 1

� Volume horaire :� 21 Cours

� 21 TD

Page 3: Cours systèmes d'exploitation 2

Pre-requis

� Architecture des ordinateurs

� Les fonctionnalites de systemes d’exploitation

� Langage C

Page 4: Cours systèmes d'exploitation 2

Bibliographie

� J. Delacroix Linux programmation systeme et reseau. EditionDunod. 2003.

� Chapitre 2 Processus, Threads et Ordonnancement : Sections :1 et 2

� Chapitre 3 Systeme de gestion de fichiers : Section : 4� Chapitre 7 Communication entre processus : Sections : 1 et 2

� A. Tanenbaum. Systemes d’exploitation. 3eme Edition. NH.2008.

� Chapitre 2 Processus et Thread : Sections : 3 et 4� Chapitre 4 Gestion de la memoire : Sections : 2 et 3� Chapitre 5 Entrees/sorties : Sections : 1 et 2� Chapitre 6 Interblocages : Section : 2

Page 5: Cours systèmes d'exploitation 2

Objectifs

� Introduire les mecanismes de base utilises par les systemespour gerer les processus et la memoire et le processeur.

� Introduire les notions de Processus, Threads

� Presenter les techniques de communications entre lesprocessus.

� Presenter les techniques de gestion du processeur.

� Presenter les techniques de gestion de la memoire d’unordinateur.

Page 6: Cours systèmes d'exploitation 2

Qu’est ce qu’un systeme d’exploitation ?

� C’est un logiciel qui remplit deux fonctions :� Machine virtuelle etendue

� Gestionnaire des ressources

Page 7: Cours systèmes d'exploitation 2

SE = Machine virtuelle etendue

� L’architecture des ordinateurs est assez fastidieuse aprogrammer

� Protocole d’utilisation

Tant que (ETAT == OCCUPE) ;

Ecrire les donnees dans le registre DONNEES

Ecrire une commande dans le registre CMD

Tant que (ETAT == OCCUPE) ;

Page 8: Cours systèmes d'exploitation 2

SE = Machine virtuelle etendue (Cont.)

� Facile a utiliser

� Re-utilisabilite

� Portable

Page 9: Cours systèmes d'exploitation 2

SE = Gestionnaire de ressources

Page 10: Cours systèmes d'exploitation 2

SE = Gestionnaire de ressources (Cont.)

� Multiplexage/partage :� Temporel

� Spatial

� Protection

� Performance

Page 11: Cours systèmes d'exploitation 2

Composants d’un ordinateur moderne

Page 12: Cours systèmes d'exploitation 2

Fonctionnement d’un ordinateur moderne

Page 13: Cours systèmes d'exploitation 2

Demarrage de l’ordinateur

Page 14: Cours systèmes d'exploitation 2

Problematique de la conception d’un SE

Objectifs :

� Definir l’abstraction

� Fournir les operations primaires

� Assurer l’isolation

� Gerer le materiel

Page 15: Cours systèmes d'exploitation 2

Problematique de la conception d’un SE (Cont.)

Raisons de la complexite :

� Programme enorme

� Partitionnement difficile

� Utilisateurs malveillants

� Partage d’informations et de ressources

� Duree de vie tres longue

� Utilisation imprecise

� Paltesformes materielles differentes

� Des milliers de peripheriques d’E/S

� Retrocompatibilite

Page 16: Cours systèmes d'exploitation 2

Structures de SE (Cont.)

� Structure simple : MS-DOS

Page 17: Cours systèmes d'exploitation 2

Structures de SE (Cont.)

� Structure simple : UNIX

Contrôleurs de périphériques

Contrôleurs de terminaux Contrôleurs de mémoires

TerminauxDisques

et bandes magnétiquesMémoire physique

Pilotes de terminalPilotes de disques

et de bandes magnétiquesMémoire virtuelle

Pages à la demande

Remplacement de pages

Multiplexage du processeur

Système de gestiondes E/S orientés caractères

Système de swapping d'E/S orientés bloques

Système de gestion de fichiers

Gestion des signaux du terminal

Appels systèmes vers le noyau

Interfaces du noyau vers le matériel

Bibliothèques système

Compilateurs et interpréteurs

Shells et commandes

Utilisateurs

No

ya

uM

até

rie

lU

tilis

at e

ur

Gestion des terminaux Système de fichiers Gestion de la mémoire

Page 18: Cours systèmes d'exploitation 2

Structures de SE (Cont.)

� Structure multicouches : THE

Couche Fonction5 L’operateur

4 Programmes utilisateur

3 Gestion des E/S

2 Communication operateurs-processus

1 Gestion de la memoire et du tampon

0 Allocation du processeur-multiprogrammation

Page 19: Cours systèmes d'exploitation 2

Structures de SE (Cont.)� Structure micronoyau

Programmesutilisateurs

Système defichiers

Pilote de périphérique

Communication interprocessus

Gestion de lamémoire

Ordonnancement

du CPU

Micronoyau

Matériel

Messages Messages

Modeutilisateur

ModeNoyau

Page 20: Cours systèmes d'exploitation 2

Structures de SE (Cont.)� Structure a base de modules : Solaris

Ordonnancement

Pilotes

Systèmede fichiers

Appelssystèmes

Exécutables

Modules de STREAMS

Modules divers

Noyau Solaris

Page 21: Cours systèmes d'exploitation 2

Structures de SE (Cont.)� Systeme hybride : MAC OS X

AquaInterface Graphique utilisateur

Environnements d'applications et services

Java Cocoa Quicktime BSD

BSD

Mach

Environnement noyau

Kit d'E/S Extensions noyau

Page 22: Cours systèmes d'exploitation 2

Structures de SE (Cont.)� Systeme hybride : Android

Noyau Linux

Media Framework

OpenGLSQLite

Surface Manager

Bibliothèques Android runtime

Core Libraries

Dalvik VM

Services applicatifs

Applications

Page 23: Cours systèmes d'exploitation 2

Introduction

Les principes du SE

Gestion des processus

Gestion de la memoire

Systemes de fichiers

Gestion des E/S

Interblocages