Pr-1st-1.1-m04-Slajd50
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwaniaAlgorytm Birmana, Schipera i Stephensona (3)
Po odebraniu pakietu
od , monitor wstrzymuje dalsze jego przetwarzanie, do momentu gdy spełnione zostaną dwa następujące warunki:Pierwszy z nich polega na sprawdzeniu czy otrzymany pakiet zawiera wiadomość wysłaną przez proces
do bezpośrednio po wiadomości o numerze sekwencyjnym zapisanym w odpowiednim polu tablicy . Warunek ten gwarantuje zatem uporządkowanie FIFO w kanale. Drugi z warunków oznacza, że nadawca wiadomości nie otrzymał przed wysłaniem wiadomości innej wiadomości od o numerze sekwencyjnym większym niż . Gdyby taki przypadek miał miejsce, to wysłanie wiadomości przez byłoby przyczynowo zależne od wysłania wiadomości , a wówczas wiadomość powinna być odebrana przez wszystkie procesy, w tym również przez , przed wiadomością .Jeżeli oba warunki zostaną spełnione, monitor
sprawdza, czy adresatem wiadomości jest proces . W przypadku, gdy rzeczywiście wiadomość aplikacyjna skierowana jest do tego procesu, monitor przekazuje ją adresatowi. Następnie monitor uaktualnia swój zegar wektorowy . Jeżeli natomiast nie jest spełniony jeden z powyższych warunków, to pakiet zawierający wiadomość jest zachowywany w monitorze . Stan taki jest utrzymywany aż do nadejścia pewnego kolejnego pakietu, którego wiadomość będzie mogła zostać odebrana, spełniając w efekcie oba wymienione warunki dla wiadomości .