Synchronisation de Processus (partie-2).pdf

(145 KB) Pobierz
Cours « système d’exploitation »
2
ème
année
IUT de Caen, Département d’Informatique
(François Bourdon)
Cours Système d’Exploitation − IUT de Caen
François Bourdon
Chapitre 3
Synchronisation de Processus
(partie−2)
Cours Système d’Exploitation − IUT de Caen
François Bourdon
Plan
1.Système de Gestion des Fichiers : Concepts
avancés
2.Création et ordonnancement de Processus
3.Synchronisation de Processus
3.1 Expression de la notion de processus
3.2 Modèles de représentation des processus
Processus séquentiels
Systèmes de tâches et graphes de précédence
Automates finis
Réseaux de Pétri
Exemples de mise en oeuvre sur UNIX
3.3 Interactions de processus
Déterminisme d’un système de tâches
Blocage dans un système de tâches
3.4 Synchronisation de processus
Section critique
Désarmement des interruptions
Instruction Test−and−Set
Les sémaphores
Les moniteurs de Hoare
3.5 Problèmes classiques de synchronisation
Producteurs/consommateurs
Lecteurs/rédacteurs
Le problème des philosophes [Dikkstra 65]
4.Communication entre Processus : les Signaux
5.Echange de données entre Processus
6.Communication entre Processus : les IPC
Cours Système d’Exploitation − IUT de Caen
François Bourdon
3.3 Interactions de processus
Des processus qui agissent en parallèle peuvent
coopérer (partage d’information ou accélération d’un
calcul), ou être en compétition les uns par rapport aux
autres pour acquérir des ressources, quand elles sont en
quantité insuffisante.
La base de l’interaction est la communication.
Dans les systèmes centralisés, les
processus
communiquent
par
l’intermédiaire de variables et d’objets
partagés.
Dans les systèmes répartis, où il
n’existe pas de mémoire commune, les
communications se font par messages et
peuvent ne pas être instantanées.
Des interactions mal contrôlées peuvent être la cause
d’un mauvais fonctionnement du système et d’une
utilisation impropre des ressources.
Pour cela on peut regarder deux problèmes :
Déterminisme
et
blocage.
Cours Système d’Exploitation − IUT de Caen
François Bourdon
Déterminisme d’un système de tâches
Définition
: C’est l’étude de la possibilité de
décider si un système de tâches donné, fournit
pour chacun de ses composants,
la même suite
de résultats.
Soit, par exemple, deux processus qui
accèdent sans contrôle à une même cellule
mémoire M, contenant la valeur 10, le
premier pour y ajouter 5, le deuxième
pour doubler la valeur contenue dans M.
Suivant l’ordre d’accès à M des deux
processus, on obtient comme valeur finale
soit :
(10 + 5) * 2 = 30,
soit :
(10 * 2) + 5 = 25.
Cours Système d’Exploitation − IUT de Caen
François Bourdon
Zgłoś jeśli naruszono regulamin