Pr-1st-1.1-m02-Slajd33

Z Studia Informatyczne
Wersja z dnia 16:51, 2 wrz 2006 autorstwa Szopen (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Dostępność wiadomości

Dostępność wiadomości

Należy zaznaczyć, że zdarzenie e\_send(Pi,Pj,M) odpowiada na ogół wykonaniu operacji asynchronicznej, która zapisuje wiadomość M do kanału wyjściowego (bufora łącza transmisyjnego). Następnie środowisko rozproszone transmituje wiadomość M do węzła docelowego i zapisuje ją w buforze wejściowym procesu docelowego Pj. Gdy wiadomość dotrze do bufora wejściowego procesu docelowego, to wiadomość staje się dostępna i może być natychmiast pobrana z bufora w wyniku wykonania operacji receive(Pi,Pj,inM).

Dostępność wiadomości utożsamiać też można z zajściem zdarzeń w środowisku komunikacyjnym: zdarzenia dostarczenia wiadomości e\_deliver(Pi,Pj,M), albo zdarzenia nadejścia wiadomości - e\_arrive(Pi,Pj,M). W tym kontekście, przez 𝒫jA oznaczymy zbiór procesów, których wiadomości dotarły i są dostępne dla Pj. Jeżeli proces odbiorcy Pj odczytuje skierowaną do niego wiadomość M, wykonując operację receive(Parser nie mógł rozpoznać (błąd składni): {\displaystyle P_i,P_j,inM<math>), wiadomość ta jest przepisywana (przemieszczana) z bufora wyjściowego łącza (bufora wejściowego procesu <math>P_i} ) do lokalnej zmiennej procesu inM. Jeżeli przepisanie to nastąpiło, to mówimy, że wiadomość została odebrana lub, że zaszło zdarzenie odbioru e\_receive(Pi,Pj,inM).

Warto przypomnieć, że wiadomości mają swoje unikalne identyfikatory, które pozwalają na jednoznaczne kojarzenie zdarzenia nadania konkretnej wiadomości ze zdarzeniem odbioru tej samej wiadomości.


<< Poprzedni slajd | Spis treści | Następny slajd >>