1 Notes de cours
sémaphores définies par Dijkstra (voir notes de cours section 1.1)
TD : synchronisation de processus par des Sémaphores
Vous pouvez utiliser deux sémaphores (n'oubliez pas leur initialisation). Une solution utilisant un seul sémaphore existe. Debut. Parbegin ProgA ; ProgB ;
Partie 4 : Synchronisation Le corrigé
Les sémaphores : Mutex0 et mutex1 pour contrôler les accès aux tampons. Vide1 Vide0
Systèmes dexploitation –Recueil dexercices TD-Synchronisation et
En utilisant 2 sémaphores complétez prendre() et liberer() pour synchroniser entre les N processus. 2) Comment corriger cette solution ? Exercice I.6. (DS 11 ...
Untitled
Exercices supplémentaires : Exercice 1 : L'algorithme d'un ensemble de processus est exprimé ainsi : var S : sémaphore init N.
Systèmes dexploitation INF3600 Exercices + Corrigés Gestion des
Préciser les sémaphores utilisés et les variables partagées. Exercice 6 : Synchronisation des processus. Deux villes A et B sont reliés par une seule voie de
Corrigé
Exercice 1 : (05 points). Question 1 : Quelles critiques peut-on faire aux S1 : Sémaphore (init à 1) pour permettre que des trains de sens contraire ne ...
Corrigé
Exercice 1 : (7 points). On considère le problème classique de Mutex : semaphore (init=1) SMax : semaphore (init à. NMax)
TD3: Programmation concurrente et synchronisation
1 Exercices avec les interblocages. 击 Exercice 1: Considérez le programme suivant qui utilise deux sémaphores pour obtenir une exclusion mutuelle
1 Notes de cours
Un sémaphore est un mécanisme de synchronisation de processus inventé par le 2.1 Exercice 1 : synchronisation ... 3 Entraînement : exercice corrigé.
TD : synchronisation de processus par des Sémaphores
Complétez le code pour réaliser le graphe des dépendances 2. Vous pouvez utiliser deux sémaphores (n'oubliez pas leur initialisation). Une solution utilisant un.
Partie 4 : Synchronisation Le corrigé
Le corrigé. Solution 1 Un sémaphore binaire mutex suffit : ... 1 semaphore de productions par liste : 10 semaphores de production (initialisé a 0).
Corrigé
Corrigé. Exercice 1 : (07 points) Question 2 : Corrigez le problème en utilisant des sémaphores. Réécrivez le code des deux processus. Réponse :.
Corrigé
Corrigé. Exercice 1 : (05 points). Question 1 : Quelles critiques peut-on comme des outils de synchronisation "avancés" par rapport aux sémaphores.
Corrigé
Examen de rattrapage Corrigé. Exercice 1 : La solution au problème du coiffeur endormi suivante présente un problème. ... Mutex : sémaphore initialisé.
Partie 4 : Synchronisation Exercice 1 :
a) Expliquez comment les processus peuvent utiliser les sémaphores pour contrôler les accès aux tampons partagés (exclusion mutuelle pas d'interblocage). b)
Corrigé
Corrigé. Exercice 1 : (7 points). On considère le problème classique de synchronisation Donnez la solution à ce problème en utilisant les sémaphores.
ED9 : Synchronisation par Sémaphores
Vérifiez que votre solution garantit les propriétés de l'exclusion mutuelle. Exercice 2. Pour faciliter l'utilisation des sémaphores Posix et des threads Unix
1 Notes de cours - u-strasbgfr
>1 Notes de cours - u-strasbg frWebUn sémaphore est un mécanisme de synchronisation de processus inventé par le physicienet informaticien hollandais Edsger Dijkstra en 1965 Il s’agît d’une structure de
TD : synchronisation de processus par des Sémaphores
>TD : synchronisation de processus par des SémaphoresWebDonnez le nouveau graphe des dépendances 3 Retirez dans le graphe des dépendances une dépendance qui est redondante 4 Donnez deux exécutions respectant les
TD 4 Sémaphores et Exclusion Mutuelle Exercice 1
>TD 4 Sémaphores et Exclusion Mutuelle Exercice 1
Comment utiliser un sémaphore ?
Le concept peut être généralisé à l’aide de sémaphore. Un sémaphore est un mutex généralisé. Au lieu d’un seul tampon, nous pouvons diviser le tampon de 4 Ko en quatre tampons de 1 Ko (ressources identiques). Un sémaphore peut être associé à ces quatre buffers.
Qu'est-ce que le sémaphore ?
Un sémaphore est un mutex généralisé. Au lieu d’un seul tampon, nous pouvons diviser le tampon de 4 Ko en quatre tampons de 1 Ko (ressources identiques). Un sémaphore peut être associé à ces quatre buffers. Le consommateur et le producteur peuvent travailler sur différents tampons en même temps.
Qui a construit le sémaphore ?
La première pierre de l'actuel sémaphore est posée le 21 mars 1986. Le bâtiment est inauguré moins d'un an plus tard, le 24 février 1987, par le contre-amiral Sajous, commandant la Marine nationale française à Lorient, en présence de Jean-Louis Delhumeau, maire de Piriac-sur-Mer 3 .
Université de Chlef Février 2015
Département Informatique
Filière : 1 ère Année Master - Ingénierie des LogicielsExamen semestriel
Module de Systèmes d"exploitation
Corrigé
Exercice 1 :
(7 points)On considère le problème classique de synchronisation des "Lecteurs-Rédacteurs", avec priorité aux Lecteurs, mais en
ajoutant la règles suivante : les Lecteurs présents dans le fichier peuvent être plusieurs mais ne doivent pas dépasser N
(un certain entier). Donnez la solution à ce problème en utilisant les sémaphores.Réponse :
Wrt : semaphore (init=1), ReadCount : entier (init=0), Mutex : semaphore (init=1), SMax : semaphore (init à
NMax),
Processus Lecteur
Début
Wait(Mutex) ;
ReadCount :=ReadCount+1 ;
Si ReadCount=1
AlorsWait(Wrt)
Finsi ;
Signal(Mutex) ;
Wait (SMax)
/* Lire dans le fichierSignal(SMax);
Wait(Mutex) ;
ReadCount :=ReadCount-1 ;
Si ReadCount=0
AlorsSignal(Wrt)
FinsiSignal(Mutex)
Fin.Processus Redacteur Début
Wait(Wrt)
/* Ecrire dans le fichierSignal(Wrt) ;
Fin. (7 points)Exercice 2 :
(7 points) Reprendre le même problème , mais en utilisant les moniteurs de Hoare : 2Réponse :
M : étant une instance du moniteur.
lecteur_rédacteur : moniteur ; . var ecr : booléen ; . nl : entier ; . I : entier ; . c_ecr, c_lect : condition ;NMax : entier;
C_LectMax : condition;
procédure début_lire ; début nl := nl + 1; si ecr alors . c_lect.attendre ; . c_lect.signaler ;I:=I+1
Si I=NMax alors c_lectMax.wait
fin ; procédure fin_lire ; débutI:=I - 1;
c_lectMax.signal nl := nl - 1; si nl = 0 alors . c_ecr.signaler ; fin ; procédure début_écrire ; début si ecr ou nl > 0 alors . c_ecr.attendre ; ecr := vrai ; fin ; procédure fin_écrire ; début ecr := faux ; si nl > 0 alors . c_lect.signaler ; sinon . c_ecr.signaler ; fin ; début ecr := faux ; nl := 0 ; fin Processus Rédacteur DébutM. Debut_ecrire
/* Ecrire dans le fichier */M.Fin_ecrire
Fin Processus Lecteur Début M. Debut_Lire /* Lire dans le fichier */M.Fin_Lire
Fin. (7 points) 3Exercice 3 :
(6 points)Question 1 : Souvent, les processus sont obligés de communiquer entre eux . Dites quelles sont les principales situations
Réponse :
Coopération : Les processus coopèrent pour la réalisation d'une certaine tâche. Dans ce cas ils doivent
communiquer pour échanger des données.Concurrence : Les processus sont en compétition pour l'occupation d'une certaine ressource. Les processus
doivent communiquer pour réglementer l'accès à cette ressource. (1 points) Question 2 : Expliquez le principe de la méthode de communication dite "mémoire partagée".Réponse :
Les processus voulant communiquer réservent en mémoire une zone (mémoire partagée) qui servira de
"boite aux lettres" . Un processus qui veut envoyer un message à un autre va le déposer dans la boite aux
lettres. Le processus destinataire ira le récupérer dans la boite. (1 points)Question 3 : Dans la méthode de communication de la "Mémoire partagée", que doit contenir un message au minimum ?
Réponse :
Le message doit contenir 3 éléments au minimum : l'identifiant du processus émetteur, l'identifiant du
processus destinataire et le message lui-même. (1 points)Question 4 : Dans la méthode de communication de la "Mémoire partagée", lorsqu"n processus Pi envoie un message à
un autre processus Pj, dites comment ce dernier peut-il savoir qu"il y"a un message qui lui a été envoyé.
Réponse :
Le processus destinataire va consulter régulièrement le contenu de la boite aux lettres. (1 points)Question 5 : Dans la méthode de communication de la "Mémoire partagée", expliquez comment un processus peut
"diffuser" un message. Expliquez le problème qui se pose alors, et donnez une solution.Réponse :
Le message diffusé comporte dans sa partie destinataire une marque qui symbolise le fait que le message
concerne tous les processus (par exemple une étoile *).Le problème est que le message déposé dans la boite doit être lu par tous les processus qui iront le lire à
des temps différents. Comment alors savoir que le message a été lu par tous les processus ?.
La solution serait d'utiliser un compteur de processus ayant lu le message. Lorsque ce compteur est égal à
N (le nombre de processus) , on peut alors savoir que le message a été lu par tous les processus et donc il
peut être supprimé de la boite. (2 points)quotesdbs_dbs9.pdfusesText_15[PDF] exercice corrigé servlet jsp
[PDF] exercice corrigé seuil de rentabilité pdf
[PDF] exercice corrigé sig et caf
[PDF] exercice corrigé sollicitation composée
[PDF] exercice corrigé spectre de latome dhydrogène
[PDF] exercice corrigé spectroscopie uv visible pdf
[PDF] exercice corrigé statistique a deux variables
[PDF] exercice corrigé statistique bivariée
[PDF] exercice corrigé statistique descriptive a deux variables pdf
[PDF] exercice corrigé statistique descriptive bivariée pdf
[PDF] exercice corrigé statistique tableau de contingence
[PDF] exercice corrigé structure langage c
[PDF] exercice corrigé suite arithmétique géométrique
[PDF] exercice corrigé sur la part de marché