Synchronisation de Processus (partie-1).pdf
(
128 KB
)
Pobierz
Cours « système d’exploitation »
2
ème
année
IUT de Caen, Département d’Informatique
(François Bourdon)
Chapitre 3
Synchronisation de Processus
(partie−1)
Cours Systèmes d’Exploitation. IUT d’Ifs département informatique.
.
Page 2
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. ...
Cours Systèmes d’Exploitation. IUT d’Ifs département informatique.
.
Page 3
François Bourdon.
3. Synchronisation de Processus
Les machines bi−processeurs existent, les systèmes existent, la
difficulté est la programmation elle−même.
On trouve plusieurs types de programmation : séquentielle,
structurée, objet, agent, fonctionnelle, parallèle ...
Suivant les langages et les systèmes sous−jacents on manipule
les processus de différentes façons.
Un processus peut être considéré comme une occurrence d’un
programme, c’est−à−dire comme une entité active/dynamique,
contrairement au programme qui est une entité statique.
L’état d’un processus c’est :
l’état de ses variables globales,
l’état de la pile,
l’état du tas,
l’état de la structure U (Unix),
l’état du registre du processeur,
sauvegardé lors de la commutation de
contexte (mot d’état).
Cours Systèmes d’Exploitation. IUT d’Ifs département informatique.
.
Page 4
François Bourdon.
3.1 Expression de la notion de processus dans les
langages de programmation
Dans Unix :
fork () , exec ()
(PID)
En Pascal// ou en
C//,
il existe une structure de
contrôle pour le parallèlisme : cobegin/coend
cobegin
<bloc1> || <bloc2> || <bloc3>
coend
à la fin du
coend
les 3 blocs sont terminés et les
processus 1,2 et 3 sont finis.
Le type « processus » peut être directement
manipulable par le langage :
process I ( < paramètres formels> )
var locale;
begin
end
start I (7, « bonjour »)
lancement du
processus
Cours Systèmes d’Exploitation. IUT d’Ifs département informatique.
.
Page 5
François Bourdon.
Plik z chomika:
musli_com
Inne pliki z tego folderu:
Linux System Programming Talking Directly to the Kernel and C Library.pdf
(8858 KB)
Unix Network Programming Volume 1.pdf
(14024 KB)
Unix Network Programming Volume 2.pdf
(21636 KB)
Developpement d un espiogiciel d evaluation.pdf
(1302 KB)
Developpement avance d un rootkit pour les modules du noyau.pdf
(970 KB)
Inne foldery tego chomika:
3D Design - Programming
ActionScript
Actionscript - Flash - Flex - Air
Ada
ADO
Zgłoś jeśli
naruszono regulamin