Introduction aux
Systèmes d’Exploitation
© Rim Moussa
2005-2006
2
Plan du Cours
1. Introduction
2. Processus et Threads
3. Interblocages
4. Gestion de la mémoire
5. Entrées/ sorties
6. Systèmes de Fichiers
7. SE Multimédias
8. Systèmes Multiprocesseurs
9. Sécurité
10. Études de cas: UNIX, Win2K
3
Bibliographie
 Andrew Tanenbaum, Modern Operating Systems,
2nd Edition. Prentice Hall.
 Alok Sinha, Network Programming in Windows NT.
Addison Wesley.
 …
4
Chapitre 1: Introduction
1. Qu’est ce qu’un SE?
2. Le Bestiaire des SEs
3. Les Concepts de Base des SEs
4. Les Appels Systèmes
5
Qu’est ce qu’un SE?
Périphériques Physiques
Micro-architecture
Langage machine
SE
Compilateurs Editeurs Shell
Syst. Bancaire … Navigateur web
Matériels
Programme
Système
Application
C’est une couche logicielle, dont le rôle est de
gérer les périphériques et de fournir aux
programmes utilisateur une interface simplifiée
avec le matériel.
6
Le Bestiaire des SEs
 Systèmes pour les mainframes
Propriétés des mainframes: capacités d’E/Ss
Serveurs web, Serveurs de commerce électronique
Le SE doit gérer de façon optimale +sieurs jobs en
même temps, et offre 3 types de services
1. Batch: exécuter des jobs sans interagir avec
l’utilisateur, exple: stat des ventes.
2. Transactionnel: gérer des requêtes concurrentes,
exple: réservation de billets d’avions
3. Temps Partagé: +sieurs utilisateurs utilisent la
même machine.
Exple: OS390 de IBM
7
… bestiaire des SEs
 SEs « serveurs »
Machines serveurs: gros micro ordinateur ou des
stations de travail.
Objectif: servir +sieurs utilisateurs a travers le
réseau  partage de ressources matérielles et
logicielles.
Exple: UNIX, Win2K server
 Systèmes Multiprocesseurs
+sieurs CPUs pour augmenter la capacité de calcul
UNIX et Win2K améliorés au niveau de la
connectivite et des communications
8
… bestiaire des SEs
 Systèmes Personnels
Interface conviviale
Exple: windows XP, Mac OS, Linux
 Systèmes Temps Réel
Respect des contraintes temporelles (soudure dans la chaîne
de montage industriel)
Exple: VxWorks, QNX
 Systèmes Embarqués
Mémoire réduite, restrictions d’alimentation
Exples de systèmes: PDA, TV, Tel cellulaire…
Exples: Palm OS, Windows CE (Consumer Electronics)
 Systèmes pour Smart Cards
Sévères contraintes de Mémoire et de puissance de calcul
Systèmes propriétaires
9
Les Concepts de Base des SEs
 Les Processus
 Les Interblocages
 La Gestion de la Mémoire
 Les Entrées/ Sorties
 La Sécurité
 Le shell
 Processus
‘Programme en cours d’exécution’
Un processus possède:
- son propre espace d’adressage: programme, données…
- Une entrée dans la Table des Processus: sert pour la
reprise après suspension
Exple: le shell, lire une commande de compilation d’un prog,
creation d’un processus enfant qui execute le compiltateur
10
… Concepts de bases
 Interblocages
L’interaction entre processus peut conduire a un interblocage
(ang. deadlock)
 Gestion de la Mémoire
La Mémoire centrale contient tous les programmes en cours
exécution  Gestion de l’espace d’adressage des
processus (a chaque processus correspond une plage
d’adresses).
 Entrées/ Sorties
Différents types de periph: claviers, video show,ecran, …
Pilotes des Périphériques
11
… Concepts de bases
 Fichiers
Le SE présente les periph de stockage de manière abstraite.
Exple d’appels systèmes sur les fichiers: création,
suppression, ouverture, fermeture, lecture, ecriture,
recherche
 Sécurité
Protection des fichiers et contre les intrus et les virus.
Exple protection des fichiers sous UNIX: un fichier est protégé
par un code binaire de 9 bits, 3 bits/ champ
Champs: propriétaire, groupe, autres
Actions: Read r, Write w, eXecute x
rwxr-x—x?
 Shell
C’est une interface entre l’utilisateur et le SE.
12
Les Appels Systèmes
 L’interface entre le SE et les programmes
utilisateurs est definie par l’ens des appels
systemes.
 L’appel systeme est analogue a un appel
procedural classique, mais il est
effectueen mode noyeau.
 Code en assembleur
13
…Appels Systèmes
Compilateur C
cpt = read (df, tampon, nboctets)
1. Empiler nboctets
2. Empiler &tampon
3. Empiler df
4. Appeler read()
5. Placement du code du read dans un registre
6. Déroutement vers le noyau -basculer en mode noyau,
7. Le code noyau examine le numéro d’appel système, utilise
une table de pointeurs indexée sur les numéros d’appels
système
8. Exécution de l’appel système
9. Rendre le contrôle a la fonction read de bibliothèque
10. Rendre le contrôle au programme utilisateur
14
… Appels Systèmes POSIX
 Gestion des Processus
– fork, execve, exit…
 Gestion des Fichiers
– open, close, read, write, stat…
 Gestion des Répertoires
– mkdir,rmdir,link …

Introduction.ppt

  • 1.
  • 2.
    2 Plan du Cours 1.Introduction 2. Processus et Threads 3. Interblocages 4. Gestion de la mémoire 5. Entrées/ sorties 6. Systèmes de Fichiers 7. SE Multimédias 8. Systèmes Multiprocesseurs 9. Sécurité 10. Études de cas: UNIX, Win2K
  • 3.
    3 Bibliographie  Andrew Tanenbaum,Modern Operating Systems, 2nd Edition. Prentice Hall.  Alok Sinha, Network Programming in Windows NT. Addison Wesley.  …
  • 4.
    4 Chapitre 1: Introduction 1.Qu’est ce qu’un SE? 2. Le Bestiaire des SEs 3. Les Concepts de Base des SEs 4. Les Appels Systèmes
  • 5.
    5 Qu’est ce qu’unSE? Périphériques Physiques Micro-architecture Langage machine SE Compilateurs Editeurs Shell Syst. Bancaire … Navigateur web Matériels Programme Système Application C’est une couche logicielle, dont le rôle est de gérer les périphériques et de fournir aux programmes utilisateur une interface simplifiée avec le matériel.
  • 6.
    6 Le Bestiaire desSEs  Systèmes pour les mainframes Propriétés des mainframes: capacités d’E/Ss Serveurs web, Serveurs de commerce électronique Le SE doit gérer de façon optimale +sieurs jobs en même temps, et offre 3 types de services 1. Batch: exécuter des jobs sans interagir avec l’utilisateur, exple: stat des ventes. 2. Transactionnel: gérer des requêtes concurrentes, exple: réservation de billets d’avions 3. Temps Partagé: +sieurs utilisateurs utilisent la même machine. Exple: OS390 de IBM
  • 7.
    7 … bestiaire desSEs  SEs « serveurs » Machines serveurs: gros micro ordinateur ou des stations de travail. Objectif: servir +sieurs utilisateurs a travers le réseau  partage de ressources matérielles et logicielles. Exple: UNIX, Win2K server  Systèmes Multiprocesseurs +sieurs CPUs pour augmenter la capacité de calcul UNIX et Win2K améliorés au niveau de la connectivite et des communications
  • 8.
    8 … bestiaire desSEs  Systèmes Personnels Interface conviviale Exple: windows XP, Mac OS, Linux  Systèmes Temps Réel Respect des contraintes temporelles (soudure dans la chaîne de montage industriel) Exple: VxWorks, QNX  Systèmes Embarqués Mémoire réduite, restrictions d’alimentation Exples de systèmes: PDA, TV, Tel cellulaire… Exples: Palm OS, Windows CE (Consumer Electronics)  Systèmes pour Smart Cards Sévères contraintes de Mémoire et de puissance de calcul Systèmes propriétaires
  • 9.
    9 Les Concepts deBase des SEs  Les Processus  Les Interblocages  La Gestion de la Mémoire  Les Entrées/ Sorties  La Sécurité  Le shell  Processus ‘Programme en cours d’exécution’ Un processus possède: - son propre espace d’adressage: programme, données… - Une entrée dans la Table des Processus: sert pour la reprise après suspension Exple: le shell, lire une commande de compilation d’un prog, creation d’un processus enfant qui execute le compiltateur
  • 10.
    10 … Concepts debases  Interblocages L’interaction entre processus peut conduire a un interblocage (ang. deadlock)  Gestion de la Mémoire La Mémoire centrale contient tous les programmes en cours exécution  Gestion de l’espace d’adressage des processus (a chaque processus correspond une plage d’adresses).  Entrées/ Sorties Différents types de periph: claviers, video show,ecran, … Pilotes des Périphériques
  • 11.
    11 … Concepts debases  Fichiers Le SE présente les periph de stockage de manière abstraite. Exple d’appels systèmes sur les fichiers: création, suppression, ouverture, fermeture, lecture, ecriture, recherche  Sécurité Protection des fichiers et contre les intrus et les virus. Exple protection des fichiers sous UNIX: un fichier est protégé par un code binaire de 9 bits, 3 bits/ champ Champs: propriétaire, groupe, autres Actions: Read r, Write w, eXecute x rwxr-x—x?  Shell C’est une interface entre l’utilisateur et le SE.
  • 12.
    12 Les Appels Systèmes L’interface entre le SE et les programmes utilisateurs est definie par l’ens des appels systemes.  L’appel systeme est analogue a un appel procedural classique, mais il est effectueen mode noyeau.  Code en assembleur
  • 13.
    13 …Appels Systèmes Compilateur C cpt= read (df, tampon, nboctets) 1. Empiler nboctets 2. Empiler &tampon 3. Empiler df 4. Appeler read() 5. Placement du code du read dans un registre 6. Déroutement vers le noyau -basculer en mode noyau, 7. Le code noyau examine le numéro d’appel système, utilise une table de pointeurs indexée sur les numéros d’appels système 8. Exécution de l’appel système 9. Rendre le contrôle a la fonction read de bibliothèque 10. Rendre le contrôle au programme utilisateur
  • 14.
    14 … Appels SystèmesPOSIX  Gestion des Processus – fork, execve, exit…  Gestion des Fichiers – open, close, read, write, stat…  Gestion des Répertoires – mkdir,rmdir,link …