Documente Academic
Documente Profesional
Documente Cultură
Stare globală
Mitică Craus
1/ 9
Introducere Modelul Message-Passing - recapitulare Algoritmul Chandy-Lamport Bibliografie
Cuprins
Introducere
Modelul Message-Passing - recapitulare
Algoritmul Chandy-Lamport
Descriere
Pseudocod
Evaluarea
Bibliografie
2/ 9
Introducere Modelul Message-Passing - recapitulare Algoritmul Chandy-Lamport Bibliografie
Introducere
• Starea globală a unui sistem distribuit este compusă din stările locale ale unităt, ilor
de procesare s, i starea mesajelor aflate ı̂n tranzit (trimise dar nereceptionate).
• ”Fotografia” stării globale, la un moment dat, ı̂nseamnă o stare consistentă ı̂n care a
sistemul distribuit a fost recent.
• Consistent, a constă ı̂n următoarele:
• Dacă unitatea de procesare pj a primit un mesaj de la unitatea de procesare pi , atunci
starea globala trebuie sa ı̂nregistreze trimiterea mesajului de către pi s, i recept, ionare
mesajului de către pj .
• Dacă unitatea de procesare pi a trimis un mesaj către unitatea de procesare pj , atunci
stare globala trebuie sa ı̂nregistreze trimiterea acestui mesaj. Recept, ionarea mesajului
de către pj poate să nu fie ı̂nregistrată ı̂n starea globală; este posibil ca primirea
mesajului să se fi produs după momentul ”fotografierii”.
• O ”fotografie” a unui sistem distribuit conţine ultimele evenimente care au fost
ı̂nregistrate pentru fiecare unitate de procesare.
• Pentru a fi consistetă, ”fotografia” trebuie să ı̂nregistreze, pentru orice recepţie a unui
mesaj, trimiterea acestuia.
• Starea globală cont, ine si informat, ile despre mesajele ı̂n tranzit, dacă există astfel de
stări de mesaje. Aceasta este o consecint, ă a faptului că recept, ionarea unui mesaj
poate să nu fie ı̂nregistrată ı̂n starea globală, dacă primirea mesajului nu s-a produs ı̂n
momentul ”fotografierii”.
3/ 9
Introducere Modelul Message-Passing - recapitulare Algoritmul Chandy-Lamport Bibliografie
5/ 9
Introducere Modelul Message-Passing - recapitulare Algoritmul Chandy-Lamport Bibliografie
Teorema (1)
Algoritmul Chandy-Lamport se termină in timp finit.
Demonstraţie.
Unităţile de procesare pj , j 6= i vor ı̂nregistra starea lor ı̂n timp finit, deoarece pi trimite un
marker câtre vecini, după care marker -ul se propagă ı̂n toată ret, eaua.
Vecinii lui pi vor ı̂nregistra starea după un timp finit, deoarece se presupune că nici un mesaj
nu rămâne la infinit pe un canal de comunicat, ie.
Dacă o unitate de procesare pj nu a ı̂nregistrat starea s, i face aceasta după ce primes, te un
marker , vecinii săi, care nu au inregistrat starea, o vor face s, i ei după ce vor primi marker -ul de la
pj .
Cum digraful care reprezintă topologia de comunicare este tare conex, ı̂ntre oricare două
unităt, i de procesare este un drum format din arce cu aceeas, i orientare. Astfel, ı̂ntre pi şi
pj (∀) j, j 6= i, j ∈ {0, 1, . . . , n − 1} există o un drum (pi = pi0 , pi1 , . . . pim = pj )
Prin inducţie, rezultă că după un timp finit pj va ı̂nregistra starea sa. Astfel, pi1 va ı̂nregistra
starea sa după un timp finit, deoarece se presupune că nici un mesaj nu rămâne la infinit pe un
canal de comunicat, ie, deci nici marker -ul trimis de pi vecinilor săi. Dacă, pik va ı̂nregistra starea
sa după un timp finit, atunci şi pik+1 va ı̂nregistra starea sa după un timp finit, deoarece marker -ul
trimis de pik vecinilor săi, după ı̂nregistrarea stării sale, va ajunge la pik+1 ı̂n timp finit.
7/ 9
Introducere Modelul Message-Passing - recapitulare Algoritmul Chandy-Lamport Bibliografie
Teorema (2)
Algoritmul Chandy-Lamport se termină cu o ”fotografie” a unei stări globale consistente.
Demonstraţie.
După primirea unui marker , o unitate de procesare nu va mai inregistra mesajele trimise spre
unitatea respectivă.
Să presupunem acum că există o unitate de procesare pd , care ı̂nregistrează primirea de la
unitatea de procesare ps a unui mesaj m, dar ps nu ı̂nregistrează trimiterea acestui mesaj.
Aceasta ı̂nseamnă că mesajul m a fost trimis de ps după salvarea stării sale, adică după
trimiterea marker -ului către vecini.
Deoarece pd ı̂nregistrează primirea lui m, acest mesaj nu putea fi trimis de ps după trimiterea
marker -ului, pentru că ı̂n această situat, ie marker -ul ar fi ajuns la pd ı̂naintea lui m şi prin urmare
primirea lui m nu ar mai fi fost ı̂nregistrat de pd .
În consecint, ă, nici o unitate de procesare nu va ı̂nregistra primirea unui mesaj fără ca
expeditorul să fi ı̂nregistrat trimiterea mesajului.
8/ 9
Introducere Modelul Message-Passing - recapitulare Algoritmul Chandy-Lamport Bibliografie
Bibliografie
9/ 9