Systèmes d'exploitation

Outils de Synchronisation et de communication des processus

Introduction

Les processus s’exécutant dans un système d’exploitation ne sontpas toujours en compétition sur la consommation de ressources, ils peuventdéfinir entre eux des relations ou des contraintes de coopération, qui dépendentde la logique de la tâche à accomplir, fixant leur déroulement dans le tempspour consommer des ressources. Le terme de synchronisation désigne l’ensemblede ses relations et le mécanisme de leur mise au point.

Exemple : le problème duProducteur/Consommateur

  • Producteur : Dépôt s’il y a au moins unecase vide
  • Consommateur : Consommation s’il y a aumoins une case pleine.

Définition

Le problème de la synchronisationconsiste à construire un mécanisme, indépendant de la vitesse d’exécution desprocess, permettant à un processus actif P de :

  • D’en bloquer un autre process Q ou de sebloquer lui-même en attendant un signal d’un autre process
  • D’activer ou d’éveiller le process Q enlui transmettant un signal d’activation

Plan

I.      Introduction

II.    Définition

III.       Formulation et spécification des contraintes de synchronisation

IV.       Réalisation de la synchronisation

1.     Mécanisme d’action directe (MAD)

2.     Mécanisme d’action indirecte (MAID)

2.1.      Synchronisation par évènements

2.1.1.       Evènement mémorisé :

2.1.2.       Evènement non mémorisé :

2.2.      Synchronisation par Sémaphore

V.    Communication entre processus (IPC : interprocess communication)

1.     Réalisation de la communication

1.1.      Le comportement logique peut être défini de deux manières différentes :

1.1.1.       Communication Directe

1.1.2.       Communication Indirecte

1.2.      Implémentation physique du système IPC

2.     Processus – thread et Exclusion mutuelle sous windows

3.     Quelques API Windows pour manipuler les process et les threads

4.     Gestion de la Section critique

VI.       Conclusion

Télécharger le cours complet


Partager ce cours avec tes amis :
Rédigé par Mostafa Sedoki
Computer science teacher and the founder of the e-learning platform "developpement-informatique.com", my mission is to provide high-quality courses for free to all computer science students and teachers

Cours Similaires :