RDM 5 - cours et exercices Corrigés - Cours et Exercices ...
Mod4-Exercices
-
Upload
ahmed-harrak -
Category
Documents
-
view
223 -
download
0
Transcript of Mod4-Exercices
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 1/17
INF2610 Hiver 2012
Module 4 : Synchronisation
4.1 Traditionnellement, les sémaphores étaient implantés en mode noyau afin depouvoir érer les attentes et réveils lors!ue les sémaphores sont inférieurs ouéau" # 0. $st%&e essentiel' (ans !uels &as pourrait%on faire mieu"' )omment'
4.2 $st%&e !ue l*alorithme de l*attente a&tive ave& alternan&e fon&tionne aussi sur unordinateur multi%pro&esseur # mémoire partaée'
4.+ $st%&e !ue l*alorithme de eterson pour l*e"&lusion mutuelle peut fon&tionner surun syst-me ave& ordonnan&ement préemptif' Non préemptif'
4.4 eut%on utiliser une instru&tion d*é&hane atomi!ue s/ap plutt !u*une
instru&tion T3 test and set lo& afin de réaliser une fon&tion permettant de érerl*entrée dans une réion &riti!ue'
4.5 )omment peut%on prorammer des sémaphores en utilisant seulement la &apa&itéde l*ordinateur # désa&tiver les interruptions'
4.6 eut%on prorammer des sémaphores # l*aide de mute" et de varialesordinaires'
4.7 eut%il 8tre pertinent d*utiliser une arri-re si on n*a !ue deu" pro&essus'
4.9 $st%&e !ue deu" fils d*e"é&ution dans un m8me pro&essus peuvent sesyn&hroniser # l*aide de sémaphore, s*il s*ait de fils érés par le syst-me' :érésen mode usaer'
4.; <n vous propose de rempla&er /ait et sinal pour les &onditions par une formeplus énérale permettant d*attendre sur une e"pression e.. /ait until " = 0 >> " ?y = n. )ette primitive serait plus fle"ile. $st%&e !ue &e serait avantaeu"'
1
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 2/17
4.10 )onsidére@ un syst-me multi&ou&he &omposé de trois &ou&hes 0, 1 et 2. 3es&ou&hes sont des pro&essus &on&urrents !ui &ommuni!uent au moyen de deu"
tampons T0 et T1 de m8me taille NA 0 et 1 partaent le tampon T0 et 1 et 2partaent le tampon T1. )ha!ue &ou&he se &hare dBun traitement parti&ulier A
3e pro&essus 0 se &hare de lire du &lavier des messaes !uBil traite avant deles déposer dans le tampon T0. 3e traitement dBun messae par la &ou&he 1&onsiste # lBen&rypter. Il est réalisé par la fon&tion $n&rypter suivante A
Message Encrypter (Message);
3a fon&tion Message Lire (); permet de lire un messae du &lavier.
3e pro&essus 1 se &hare de transférer dire&tement les messaes du tamponT0 vers le tampon T1.
3e pro&essus 2 ré&up-re les messaes du tampon T1 pour les envoyer # undestinataire. 3Benvoi dBun messae est réalisé par la fon&tion $nvoyer A
Envoyer (Message );
2
clavier P0
P1
P2
T0
T1
Envoyer (m)
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 3/17
$"pli!ue@ &omment les pro&essus peuvent utiliser les sémaphores pour &ontrlerles a&&-s au" tampons partaés e"&lusion mutuelle, pas dBinterlo&ae.(onne@ les pseudo&odes des trois pro&essus.
4.11 émaphores
1. $"pli!ue@ &e !ui peut arriver si la file dBattente dBun sémaphore est érée selon ladis&ipline 3IF< last in first out.
2. $"pli!ue@ un avantae de lButilisation de moniteurs sur les sémaphores pour lasyn&hronisation de pro&essus.
+. )ompléte@, en aCoutant les sémaphores et les opérations et D né&essaires, les
&odes du produ&teur et du &onsommateur suivants. 3e produ&teur produitplusieurs ressour&es # la fois alors !ue le &onsommateur &onsomme une seuleressour&e # la fois.
&har TENG taleau de N &ara&t-resemaphore lein 0, DideN, Jute"1
rodu&teur Kint ip0, JG&har &hENG
Lepeter K J3ire&h,NG
(eposer&h, J, ipG
ip ip ? J M NG
)onsommateur Kint i&0G
&har &G Lepeter K
& Letirer i&Gi& i&?1 MN
Traiter&G
3a fon&tion O int 3ire&har &hE, int NG P &onstruit, dans &h, une &haQne de &ara&t-res delonueur &omprise entre 1 et N in&lusivement. $lle retourne la lonueur de la &haQne.
3a fon&tion O void (eposer&har &hE, int J, int ipG P ins-re, dans le tampon T, la &haQnede &ara&t-res &h. J est la lonueur de la &haQne.
3a fon&tion O &har Letirerint i&G P retire un &ara&t-re du tampon T. $lle retourne le&ara&t-re retiré.
+
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 4/17
3a fon&tion O void Traiter&har &G P traite le &ara&t-re.
4.12 Trois pro&essus &on&urrents 1, 2 et + e"é&utent &ha&un le prorammesuivantA
i i 1,2,+
K int n0G
/hiletrue
printfR&y&le Md de MdR, n??, iG
Synchronisez les &y&les des pro&essus # lBaide de sémaphores de mani-re # &e !ue A
• )ha!ue &y&le de 1 sBe"é&ute en &on&urren&e ave& un &y&le de 2.
• 3e pro&essus + e"é&ute un &y&le, lors!ue 1 et 2 terminent tous les deu"
lBe"é&ution dBun &y&le.
• 3ors!ue + termine un &y&le, les pro&essus 1 et 2 entament &ha&un un
nouveau &y&le et ainsi de suiteS
4.1+ 3a ville de Jontréal veut restru&turer la &ir&ulation sur son territoire. 3e &onseilmuni&ipal dé&ide don& de resyn&hroniser les interse&tions pour réduire le trafi&
au" heures de pointe. 3a ville vous enae pour réaliser un mod-le desyn&hronisation, # lBaide de sémaphores, dBune interse&tion typi!ue de la ville. Ilest important de noter !ue le virae # droite sur le feu roue nBest pas léal surlBQle de Jontréal. 3Binterse&tion &hoisie poss-de + voies nord%sud et 2 voies est%ouest.
3 voies nord-sud :
armi les + voies nord%sud, la plus # droite permet de tourner # droite et dBallertout droit. 3a &entrale permet dBaller tout droit tandis !ue &elle de au&he est unevoie réservée pour le tournant # au&he. 3es &ondu&teurs enaés dans &ettevoie doivent attendre la fl-&he verte pour tourner, tandis !ue le feu vert dans lesdeu" autres voies sont des feu" pleins feu" ronds. 3es voies opposées sontsoumises au" m8mes r-les.
2 voies est-ouest :
4
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 5/17
3a voie la plus # droite de &es deu" voies permet au" &ondu&teurs de tourner #droite ou dBaller tout droitG par &ontre, la plus # au&he de &es voies permetseulement dBaller tout droit. )omme dans la maCorité des interse&tions de la ville,le virae # au&he nBest pas permis dans &e sens de la &ir&ulation. 3e feu !ui
permet de traverser lBinterse&tion pour &es voies est un feu plein. 3es voiesopposées sont soumises au" m8mes r-les.
3e s&héma suivant illustre lBe"pli&ation A
<n suppose !ue lBinterse&tion est touCours lire A d-s !uBun &ondu&teur sBenae,il sera apte # traverser enti-rement lBinterse&tion. 3es feu" du sens est%ouestouest%est sont initialement verts. 3es feu" opposés sont touCours dans le m8meétat A si la fl-&he est verte lBautre fl-&he lBest aussi. 3a sé!uen&e de passae auvert doit suivre lBordre suivant A le feu est%ouest, puis le feu" nord%sud, et la fl-&hepour finir. eulement un des trois énumérés peut 8tre vert # la fois.)ha!ue voie poss-de sa file de voitures en attente du feu vert. )es files serontmodélisées par des listes de la T3. (e plus, un pro&essus léer sera en &harede syn&hroniser les feu" # lBaide de sémaphores. 3Battente a&tive dans le mod-lenBest pas a&&eptale.
denti!ier les mod-les de syn&hronisation &lassi!ues présents dans &e syst-me."#ter$inez le nomre de pro&essus léers né&essaires, le nomre desémaphores et de mute" ave& leurs valeurs initiales. ndi%uez le rle de &ha&un.
5
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 6/17
4.14 (eu" pro&essus et U &ommuni!uent au moyen dBun tampon T pouvant &ontenir!uBun seul messae # la fois. )e tampon est utilisé, de faVon alternée, pour la&ommuni&ation dans les deu" sens attention un seul pro&essus utilise # la fois &etampon. 3e pro&essus dépose un messae dans le tampon puis attend la
réponse de U avant de déposer # nouveau un autre messae et ainsi de suiteS.3ors!ue U reVoit un messae de , il dépose sa réponse dans le tampon puis semet en attente dBun autre messae de et ainsi de suiteS yn&hronise@ aumoyen de sémaphores les pro&essus et U pour répondre # la !uestion,&ompléte@ le &ode suivant
semaphore S.. G W0W&har TE256 Gvoid depot &har ufE Gvoid re&uperer&har ufE G
ro&essus ro&essus U
K &har messE256, repE256 G K &har messE256 , repE256 G
/hile 1 /hile 1K W 1 W K W 4 W lire messG
depot mess G re&uperer mess G reponsemess,rep W 2W W5W re&upererrep G depotrepG
W+W W 6W
uppose@ maintenant !uBun troisi-me pro&essus ) veuille &ommuni!uer ave& Uen utilisant lBuni!ue tampon T. 3es pro&essus et ) se &omportent de la m8memani-re. U peut don& re&evoir un messae de ou ), la réponse doit 8treré&upérée par le pro&essus e"péditeur du messae. yn&hroniser au moyen de
sémaphores les pro&essus , U et ).
4.15 yn&hronise@ au moyen de sémaphores lBen&haQnement des opérations defari&ation de stylos # ille. )ha!ue stylo est formé dBun &orps, dBune &artou&he,dBun ou&hon arri-re et dBun &apu&hon. 3es opérations # effe&tuer sont lessuivantes A
• remplissae de la &artou&he ave& lBen&re opération L),
6
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 7/17
• assemlae du ou&hon arri-re et du &orps opération U<,
• assemlae de la &artou&he ave& le &orps et le &apu&hon opération ,
• emallae opération $J.
)ha!ue opération est effe&tuée par une ma&hine spé&ialisée mL), mU<, m,m$J. 3es sto&s de pi-&es déta&hées et dBen&re sont supposés disponiles!uand la ma&hine est disponile. 3es opérations L) et U< se font en parall-le.3Bopération doit 8tre effe&tuée, apr-s &es deu" opérations, en prélevantdire&tement les éléments sur les ma&hines mL) et mU<. 3e produit assemléest déposé dans un sto& en attente de lBopération $J. 3Bopération $J se faitdon& apr-s , # partir du sto&. 3e sto& est supposé de taille N et de dis&iplineFIF<.
mRC( )
{ while (1){
RC( ) ;
}
}
mBO( )
{ while (1){
BO( ) ;
}
}
mAS( )
{ while (1){
AS( ) ;
}
}
mEM( )
{ while (1){
EM() ;
}
}
4.16 <n dispose dBune &arte éle&troni!ue # ase de mi&ro&ontrleurs pour &ontrler unensemle de roots. 3a &arte est livrée ave& un loi&iel sous 3inu", !ui permet de
&réer son propre proramme pour &ommander et &oordonner un ensemle deroots, et de le &harer ensuite dans la mémoire non volatile sur la &arte par unport série. <n vous solli&ite pour é&rire un pseudo&ode !ui &ontrle ledépla&ement de plusieurs roots sur les &hemins suivants A
3es roots peuvent partir de vers ) ou de ( vers .
our éviter tout ris!ue de &ollision, il faut sBassurer !ue &ha!ue sement du
&hemin sements U, U) et (U est utilisé par un root au plus.
7
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 8/17
our répondre # &ette !uestion, &ompléte@ le pseudo&ode suivant afin !ue lesr-les &i%dessus soient respe&tées. (ans &e proramme, &ha!ue root est&ommandé par un pro&essus.
$st%&e !ue votre solution présente un prol-me de famine ' interlo&ae 'Xustifie@.
/*0*/
void TraverserSegAB ( ) ; // Traverser le segment ABvoid TraverserSegB ( ) ; // Traverser le segment B
void TraverserSegB! ( ) ; // Traverser le segment B!
Process"s #o$otA Process"s #o$ot!A
K K
W 1 W W 4 WTraversereU G TraversereU( GW 2W W5W
TraversereU) G TraversereU G W+W W 6W
4.17 3a &ir&ulation dans une interse&tion de deu" voies # sens uni!ue est rélée par
des sinau" lumineu" feu vertroue. <n suppose !ue les voitures traversentlBinterse&tion en ligne droite et !ue l&intersection peut contenir au plus unevoiture ' la !ois.
<n impose les &onditions suivantes A
9
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 9/17
o toute voiture se présentant # lBinterse&tion la fran&hit en un temps fini G
o les feu" de &ha!ue voie passent alternativement du vert au roue, &ha!ue&ouleur étant maintenue pendant un temps fini (ureeYduYfeu G
o les arrivées sur les deu" voies sont réparties de faVon !uel&on!ue.
3e fon&tionnement de &e syst-me peut 8tre modélisé par un ensemle depro&essus parall-lesA
o un pro&essus P !ui e"é&ute la pro&édure Changement !ui &ommande les feu"G
o un pro&essus est asso&ié # &ha!ue voitureG la traversée du &arrefour par unevoiture !ui &ir&ule sur la voie i i 1, 2 &orrespond # l*e"é&ution d*une pro&édureTraverseei() par le pro&essus asso&ié # la voiture.
our simuler un tel syst-me, on vous demande, dans un premier temps, de&ompléter, en aCoutant les sémaphores et le &ode né&essaires, les pro&éduressuivantes (attention A vous ne deve@ pas aCouter de variales dBautres types A
Feu 1 si le feu" de la voie 1 est vert, Feu 2 si le feu" de la voie 2 est vert
&ir&uler simule la traversée de lBinterse&tion
(ans une se&onde étape, il vous est demandé de &ompléter le moniteur suivant,en aCoutant les variales de &ondition et le &ode né&essaires A
;
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 10/17
Feu 1 si le feu" de la voie 1 est vert, Feu 2 si le feu" de la voie 2 est vert N/1 est le nomre de voitures .S. sur la voie 1
N/2 est le nomre de voitures ..S..sur la voie 2.
4.19 <n souhaite implémenter au moyen de sémaphores les &ompteurs dBévénements.Zn &ompteur dBévénements est un &ompteur asso&ié # un événement. a valeurindi!ue le nomre dBo&&urren&es de lBévénement asso&ié. :énéralement, &e&ompteur est partaé entre plusieurs pro&essus et sert # les syn&hroniser. (ans&e sens, trois opérations atomi!ues sont définies pour un &ompteur dBévénement
$ A
◦ Lead$ A retourne la valeur de $ au pro&essus appelant.
◦ dvan&e$ A in&rémente de 1 la valeur de $ et délo!ue tous les pro&essusen attente !ue $ atteine &ette nouvelle valeur.
◦ /ait$, v A lo!ue le pro&essus appelant, si la valeur de $ est stri&tementinférieure # v. Il nBy a pas de lo&ae du pro&essus appelant si la valeur de $est déC# éale ou plus rande !ue v.
o$pl#tez au moyen de s#$aphores, la stru&ture et les pro&édures /ait,
Lead et dvan&e suivantes sous forme de pseudo&ode. ndi%uez &lairementles stru&tures de données aCoutées dans la stru&ture )ompteur$venement ainsi!ue les opérations asso&iées.
str"ct om%te"rEvenement& int val ; /* 0 */ '
10
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 11/17
void Aait (om%te"rEvenement *E; int ale"r)
& /*1*/ '
void Advance (om%te"rEvenement *E)
& /* 2 */ '
int #ead (om%te"rEvenement *E)
& /* * / '
om%te"rEvenement E + /* ,*/ ;
4.1; <n &onsid-re le prol-me du passae # niveau # voie uni!ue. our simuler lefon&tionnement de &e syst-me, on se propose de le modéliser par un ensemlede pro&essus parall-les A
• un pro&essus )ontrleur !ui se &hare de &ommander la fermeture et lBouverturedes arri-res. 3es arri-res doivent 8tre fermées lors!uBun train traverse lepassae # niveau. 3e &ontrleur ouvre les arri-res sBil nBy a au&un train enattente du passae # niveau.
• un pro&essus Train est asso&ié # &ha!ue train. Il est &réé de faVon aléatoirepour simuler lBarrivée dBun train ainsi !ue la traversée du passae # niveau.
o$pl#tez en aCoutant les s#$aphores et le code né&essaires, les pro&éduressuivantes e"é&utées par les pro&essus )ontrleur et Train (attention A vous ne
deve@ pas aCouter de variales dBautres types. i esoin est, vous pouve@ utiliserlBopération int NUsemaphore s !ui est lBé!uivalent de semYtry/ait[s.E*pli%uez le rle de &ha!ue sémaphore indi%uez lButilité de sa %ueue ainsi !uesa valeur initiale.
+ttention : Dous ne deve@ pas aCouter de variales autres !ue les sémaphores.
11
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 12/17
Semaphore ……………… W0Wontr-le"r () Train()
& &
.ile(1) /**/& /*1*/
Traverser();
/*,*/
ermerBarrieres() ; ' /*2*/
"vrirBarrieres() ; '
'
4.20 <n dispose d*un mé&anisme d*enreistrement # un ensemle de &ours, tel !uetout étudiant ne peut 8tre ins&rit !u*# au plus trois &ours, et !ue &ha!ue &ours a unnomre limité de pla&es. Zn étudiant ins&rit déC# # trois &ours peut sBil le souhaiteen aandonner un, pour en &hoisir un autre dans la limite des pla&es disponiles.i &et é&hane nBest pas possile, lBétudiant ne doit pas perdre les &ours au"!uelsil est déC# ins&rit.
3e ureau des affaires a&adémi!ues souhaite don& mettre en pla&e un syst-mede permutation de &ours, permettant # un étudiant de &haner de &ours. Il voussolli&ite pour vérifier si lBimplémentation !ue vous ave@ proposée il y a un anavant se suivre le &ours INF+600 est &orre&te A
void $&hane)ours utilisateur utilisateur, )ours &ours1, &ours2 K &ours1%\verrouille G verrouille lBa&&-s # lBoCet &ours1 &ours1%\desins&rit utilisateurG if &ours2%\estlein false K &ours2%\verrouille G verrouille lBa&&-s # lBoCet &ours2 &ours2%\ins&rit utilisateurG &ours2%\deverrouille G déverrouille lBa&&-s # lBoCet &ours2 &ours1%\deverrouille G déverrouille lBa&&-s # lBoCet &ours2
12
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 13/17
,#ri!iez si li$pl#$entation est correcte A i elle est &orre&te, e*pli%uezpour%uoi, en montrant &omment est éré le &as o] deu" étudiants ou plusveulent a&&éder en m8me temps au syst-me. i elle est in&orre&te listez ete*pli%uez les pro.l/$es, et proposez une solution !ui fon&tionne.
4.21 <n vous solli&ite pour implémenter en utilisant les sémaphores un autremé&anisme de syn&hronisation appelé O Uarri-res P. )e mé&anisme est tr-s utilepour syn&hroniser un roupe de pro&essus &omposés &ha&un de plusieurs phases!ui fon&tionnent selon la r-le suivante A u&un pro&essus ne peut entamer saphase suivante tant !ue les autres nBont pas fini leurs phases &ourantes. ourréaliser une telle syn&hronisation, une arri-re est pla&ée # la fin de &ha!ue
phase. 3ors!uBun pro&essus atteint une arri-re, il est lo!ué Cus!uB# &e !ue tousles autres pro&essus atteinent la arri-re. 3es pro&essus peuvent alors e"é&uterleurs phases suivantes.
ar e"emple, les trois pro&essus , U et ) suivants &onsistent en deu" phasesO a&!uisition P et O traitement P de param-tres. ve& la arri-re ^, il ne peut yavoir un pro&essus # lBétape a&!uisition de param-tres et un autre # lBétape detraitement. )ette arri-re permet au" trois pro&essus de se syn&hroniser avantdBentamer une autre phase.
UarrierYt ^ + G + est le nomre de pro&essus utilisant la arri-re ^.
ro&essus
K /hile 1
K &!uisaram1 G
^.Uarriere G
Trtaram1 G
^.Uarriere G
ro&essus U
K /hile 1
K &!uisaram2 G
^.Uarriere G
Trtaram2 G
^.Uarriere G
ro&essus )
K /hile 1
K &!uisaram+ G
^.Uarriere G
Trtaram+ G
^.Uarriere G
(onne@ une implémentation au moyen de sémaphores de &e mé&anisme desyn&hronisation sous forme de pseudo%&ode. our répondre # &ette !uestion,définisse@ une &lasse dBoCet UarrierYt en pré&isant ses attriuts et sesméthodes.
1+
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 14/17
<n veut maintenant utiliser les arri-res pour syn&hronise@ une &haQne deprodu&tion de stylos # ille. )ha!ue stylo est formé dBun &orps, dBune &artou&he,dBun ou&hon arri-re et dBun &apu&hon. 3es opérations # effe&tuer pour fari!uerun stylo sont les suivantes A
• remplissae de la &artou&he ave& de lBen&re opération L) ,
• assemlae du ou&hon arri-re et du &orps opération U< ,
• assemlae de la &artou&he ave& le &orps et le &apu&hon opération ,
• emallae opération $J .
)ha!ue opération est effe&tuée par une ma&hine spé&ialisée &ommandée par unpro&essus mL), mU<, m, m$J. 3es sto&s de pi-&es déta&hées et dBen&resont supposés disponiles !uand la ma&hine est disponile. 3es opérations L)et U< se font en parall-le. vant dBentamer lBopération , la ma&hine m doitprélever les éléments sur les ma&hines mL) et mU< opération :. 3eproduit assemlé est ensuite prélevé par m$J pour lBemallae.
(onne@ le pseudo%&ode de &ha!ue pro&essus. Indi!ue@ &lairement les arri-resutilisées, leurs valeurs ainsi !ue leurs rles.
0arrier1t
$5( )
6 7hile (8)6
8 5( ) ; 2 99
$0( )6 7hile (8)
6
3 0( ) ; 4 99
14
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 15/17
$+S( )6 7hile (8)
6
<=( ) ; > +S( ) ; ? 99
$EM()
6 7hile (8)6
@ <=( ) ; A EM( ) ; 8 99
Zne mauvaise utilisation des arri-res peut%elle mener vers des interlo&aes 'Xustifie@ '
4.22 oient trois pro&essus &on&urrents 1, 2 et + !ui partaent les variales n etout. our &ontrler les a&&-s au" variales partaées, un prorammeur proposeles &odes suivantsA
• emaphore mute"1 1 G
• emaphore mute"2 1 G
• )ode du pro&essus p1 A
mute"1 Gmute"2 G
outout?1 Gnn%1 GDmute"2 G Dmute"1 G
• )ode du pro&essus p2 A
mute"2 Goutout%1 G
15
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 16/17
Dmute"2 G
• )ode du pro&essus p+ A
mute"1 G
nn?1 GDmute"1 G
)ette proposition est%elle &orre&te ' inon, indi!uer parmi les 4 &onditionsre!uises pour réaliser une e"&lusion mutuelle &orre&te, &elles !ui ne sont passatisfaites ' roposer une solution &orre&te.
<n veut effe&tuer en parall-le le produit de deu" matri&es et U dBordre n n"n.our se faire, on &rée m m=n pro&essus léers threads. )ha!ue pro&essusléer se &hare de &al&uler !uel!ues lines de la matri&e résultat L A
our C 0 # n%1 LEi,C ∑0,n%1 Ei,WUE,C G
(onner sous forme de &ommentaires en utilisant les sémaphores et lesopérations et D, le &ode des pro&essus léers A )al&ul3ines . ré&iser lessémaphores utilisés et les variales partaées.
4.2+ (eu" villes et U sont reliés par une seule voie de &hemin de fer. 3es trainspeuvent &ir&uler dans le m8me sens de vers U ou de U vers . Jais, ils nepeuvent pas &ir&uler dans les sens opposés. <n &onsid-re deu" &lasses depro&essus A les trains allant de vers U Train versU et les trains allant de U vers
Train Uvers. )es pro&essus se dé&rivent &omme suit A
Train versU A• (emande dBa&&-s # la voie par G
• )ir&ulation sur la voie de vers UG ortie de la voie par UG
Train Uvers A
• (emande dBa&&-s # la voie par U G
• )ir&ulation sur la voie de U vers G
• ortie de la voie par G
armi les mod-les étudiés en &lasse produ&teur&onsommateur,le&teurréda&teur, les philosophes, &e prol-me &orrespond # !uel mod-le '
$&rire sous forme de &ommentaires en utilisant les sémaphores, les opérations et D, les &odes de demandes dBa&&-s et de sorties, de faVon # &e !ue lespro&essus respe&tent les r-les de &ir&ulation sur la voie uni!ue.
16
8/12/2019 Mod4-Exercices
http://slidepdf.com/reader/full/mod4-exercices 17/17
4.24 )onsidérons le prol-me produ&teur&onsommateur, vu en &lasse. dapte@ lasolution suivante A
u &as de n produ&teurs, n &onsommateurs et un seul tampon de taille Ja", il
peut &ontenir au plus Ja" messaes. 3es produ&teurs produisent des messaeset les déposent dans le tampon. )ha!ue messae déposé dans le tampon estré&upéré &onsommé par un seul &onsommateur.
u &as dBun seul produ&teur, n &onsommateurs et n tampons de m8me tailleJa". )ha!ue messae produit par le produ&teur est déposé dans tous lestampons en &ommenVant par le premier. 3e &onsommateur i ré&up-re&onsomme les messaes déposés dans le tampon i.
emaphore Jute" 1, DideJa", lein0 GJessae tampon EJa" G
rodu&teur Kint ip 0 GJessae m GLepeter K
m &reermessae GDide GJute" GTamponEipmGDJute" G
ip?? GDlein G
tant !ue vrai G
)onsommateur Kint i& 0 GJessae m GLepeter K
lein G
Jute" Gm TamponEi&GDJute" Gi&?? GDDide G
tant !ue vrai G
17