Académique Documents
Professionnel Documents
Culture Documents
Contenu
Nom fichier ?
Dossier ?
Stockage fichier en disque ?
Plusieurs tâches s’exécutent ?
1 processeur, plusieurs utilisateurs:
blocage, temps réponse,…
5
Types des systèmes
d’exploitation
6
Le serveur central prend en charge l'intégralité
des traitements, y compris l'affichage qui est
simplement déporté sur des terminaux passifs.
7
Rôles d’un système d’exploitation
8
Structure d’un système d’exploitation
utilisateurs du système
9
Structure d’un système d’exploitation
(suite)
10
Fonctions principales d’un
système d’exploitation
11
Gestion des processus
12
Processus et Threads
13
Creation de processus
14
Création des processus
Hiérarchie des processus
P1
P3
P2
P4 P5 P6
15
Parallélisme
P2
P1
Système
16
Processus
L’espace de travail comporte :
Le code exécutable du programme
La pile d’exécution
partagées
Les fichiers ouverts
un PCB
17
PCB = Process Control Block:
Représente la situation actuelle
d ’un processus, pour le reprendre
plus tard
pointeur sur le fichier lu/ecrit
PI (pointeur d'instruction)
18
Segments d’un processus
Pile
Données (DATA)
Code
19
Terminaison de processus
etc.
20
État de processus
22
Contexte processus et contexte système :
Le kernel peut opérer en contexte processus
autrement dit pour le compte d’un processus
(par appel système). Il peut aussi opérer en
contexte système pour gérer les interruptions
en provenance des périphériques.
23
Exercices
Soit un système à n UCT, quel
est le nombre maximal de
processus dans les états prêt,
exécution et bloqué ? A 0.00 3
FCFS,
SJF
SRT,Tourniquet q=2
24
Ordonnancement
de processus :
25
Rôle des répartiteurs :
26
File d’ordonnancement :
et type d’E/S
27
Multiprogrammation sans temps
partagé :
28
Répartiteur avec temps partagé :
29
Types d'ordonnancements
30
Synchronisation :
31
Désactivation des interruptions :
désactiver les interruptions quand un
processus veut entrer en section critique et de
les réactiver en sortant.
Inconvénient:
Il est généralement dangereux d’autoriser les
désactivations d’interruptions car cela pourrait
bloquer l’ordinateur.
32
Solution materielle TSL ( Test and Set Lock):
une opération câblée du processeur. Par définition, c'est donc une opération
atomique qui ne peut pas être interrompue par aucun évènement.
Section_critique ( ) ; Section_critique ( ) ;
A_qui_le_tour = 1 ; A_qui_le_tour = 0 ;
Section_non_critique ; Section_non_critique ;
} }
33
Problèmes classiques
de synchronisation
35
Sémaphore
Down(S) p(s) //Entrer un processus dans la liste critique (pour utiliser la ressource)
Si s.valeur<0
//S'il n y a plus de place pour accéder à la ressource, le proccessus est ajouté à
Ajouter ce processus à la liste la liste d'attente
//puisque le processus est dans la liste d'attente , on le met en etat endormi
Sleep() ;
Fin si
}
{ //incremente ...
S.valeur=s.valeur+1;
Si s.valeur<=0 alors Retirer un processus de la liste //S'il y a une place d'accés , donner l'accés
au dernier element de la liste d'attente
Wake up(proc) ; // le reveiller
Fin si
}
36
Algorithmes d’ordonnancement
37
Evaluation des A.O
Temps de rotation
Temps de virement
Temps d’attente
Temps de rotation moyen
Temps d’attente moyen
débit
38
Gestion de mémoire: objectifs
Optimisation de l ’utilisation de la mémoire principale
= RAM
Les plus grand nombre possible de processus actifs
doit y être gardé, de façon à optimiser le
fonctionnement du système en multiprogrammation
garder le système le plus occupé possible, surtout
l’UCT
s’adapter aux besoins de mémoire de l ’usager
39
Adresses physiques et logiques
Mémoire physique: la mémoire RAM de la machine
Adresses physiques: les adresses de cette mémoire
Mémoire logique: l’espace d`adressage d’un
programme
Adresses logiques: les adresses dans cet espace
Il faut séparer ces concepts car normalement, les
programmes sont chargés de fois en fois dans
positions différentes de mémoire
Donc adresse physique ≠ adresse logique
40
adresses logiques adr.physiques
41
Chargement et traduction
d’adresses
Alloc. de mém.
0
JUMP 328
Autres
programmes
JUMP 10328
500K
Mémoire logique
Mém. physique
42
Affectation contiguë de mémoire
Nous avons plusieurs programmes à
exécuter
Nous pouvons les charger en mémoire
les uns après les autres
le lieu où un programme est lu n’est connu
que au moment du chargement
Besoins de matériel: registres
translation et registres bornes
43
Registres bornes et translation
dans MMU
44
Fragmentation: mémoire non
utilisée
45
Algorithme de placement pour
partitions fixes
Partitions de tailles
inégales: utilisation
d’une seule file
On choisit la plus petite
partition libre pouvant
contenir le prochain
processus
le niveau de
multiprogrammation
augmente au profit de la
fragmentation interne
46
Partitions dynamiques
47
Gestion de la mémoire
Algorithmes d’allocation
La première zone libre
Le pire ajustement
Meilleur ajustement
Zones siamoises
48
Gestion de la mémoire
Allocation de la mémoire
49
Allocation non contiguë
A fin d ’éliminer le besoin de compression, le prochain pas est
d`utiliser l’allocation non contiguë
diviser un programme en morceaux et permettre l`allocation
50
Gestion de la mémoire virtuelle
Principe
La pagination
Les algorithmes de remplacement de
page
51
Pagination simple
La mémoire est partitionnée en petits morceaux de
même taille: les pages physiques ou ‘cadres’ ou
‘frames’
Chaque processus est aussi partitionné en petits
morceaux de même taille appelés pages (logiques)
Les pages logiques d’un processus peuvent donc être
assignés aux cadres disponibles n’importe où en
mémoire principale
Conséquences:
un processus peut être éparpillé n’importe où dans la
mémoire physique.
la fragmentation externe est éliminée
52
Tableaux de pages
53
Gestion de la mémoire virtuelle
algorithmes de remplacement de page
Page optimale
Premier entré premier sortie FIFO
La page la moins récemment utilisé LRU
54
Mécanisme: matériel
55
Traduction d’adresse (logique-
physique) pour la pagination
56
Les segments sont des parties
logiques du programme
A
JUMP(D, 100) B
Progr.
Princ. LOAD(C,250) Données
C
D
Données Sous- LOAD(B,50)
progr.
57
Mécanisme pour la segmentation
0
1
Adr de 3
segment courant
Adr de 2
Adr de 1 2
Adr de 0
tableau de segments
mémoire physique
58
Traduction d`adresses dans la
segmentation
59
Gestion des fichiers
60
Qu’est ce qu’un fichier
Collection nommée d’informations
apparentées, enregistrée sur un stockage
secondaire
Nature permanente
Les données qui se trouvent sur un stockage
secondaires doivent être dans un fichier
Différents types:
Données (binaire, numérique, caractères….)
Programmes
61
Attributs d’un fichier
Constituent les propriétés du fichiers et sont stockés dans un fichier
spécial appelé répertoire (directory). Exemples d’attributs:
Nom:
pour permet aux personnes d’accéder au fichier
Identificateur:
Un nombre permettant au SE d’identifier le fichier
Type:
Ex: binaire, ou texte; lorsque le SE supporte cela
Position:
Indique le disque et l’adresse du fichier sur disque
Taille:
En bytes ou en blocs
Protection:
Détermine qui peut écrire, lire, exécuter…
Date:
pour la dernière modification, ou dernière utilisation
Autres…
62
Opérations sur les fichiers
Création
Écriture
Pointeur d’écriture qui donne la position d’écriture
Lecture
Pointeur de lecture
Positionnement dans un fichier
Suppression d’un fichier
Libération d’espace
Troncature: remise de la taille à zéro tout en
conservant les attributs
63
Opérations sur les fichiers
Ajout d’infos
Rénommage
Copie (peut être faite par rénommage)
Ouverture d’un fichier: le fichier devient
associé à un processus qui en garde les
attributs, position, etc.
Fermeture
Ouverture et fermeture peuvent être
explicites (ops open, close)
ou implicites
64
Types de fichiers
Certains SE utilisent l’extension du nom du
fichier pour identifier le type.
MS-DOS: Un fichier exécutable doit avoir
l’extension .EXE ou .COM (sinon, le SE refusera
de l’exécuter)
Pour certains SE le type est un attribut
MAC-OS: l’application qui crée le fichier définit son
type (ex: document Word Perfect)
Le type n’est pas défini pour certains SE
Unix: l’extension est utilisée (et reconnue)
seulement par les applications
65
Informations dans un répertoire
Nom du fichier
Type
Adresse sur disque, sur ruban...
Longueur courante
Longueur maximale
Date de dernier accès
Date de dernière mise à jour
Propriétaire
Protection
66
Graphes sans cycles: permettent de
partager fichiers
67
Structures de systèmes de
fichiers
68
Allocation contiguë sur disque
69
Allocation enchaînée
70
71
Gestion d’espace libre
Solution 1: vecteur de bits (solution Macintosh,
Windows 2000)
0 1 2 n-1
…
0 libre
bit =
1 occupé
72
Gestion d’espace libre
Solution 2: Liste liée de mémoire libre
(MS-DOS, Windows 9x)
73