Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Begin ifthis - инициатор then. beginstate := cand ; send (token, this) to Nextp ;



begin state:= cand; send (token, this) to Nextp;

repeat receive (token, q);

if q = this then state:= coordinator

Else ifest(this) < est(q)then

begin if state = cand then state:= lost;

send (token, q) to Nextp

End

until state = coordinator

End

else repeat receive (token, q); send (token, q) to Nextp;

if state = sleep then state:= lost

until false

end (* Только координатор может завершить выполнение программы. Он передает сообщение всем сайтам, чтобы сообщить им свой идентификатор. *)

Пусть p0 – инициатор с наибольшим идентификатором. Все процессы являются либо не-инициаторами, либо инициаторами с идентификаторами меньшими p0, поэтому все процессы передают дальше маркер (token, p0), отправленный p0. Следовательно, p0 получает свой маркер обратно и становится выбранным.

Не-инициаторы не могут быть выбраны, так как все они приходят в состояние проигравший самое позднее, когда через них передается маркер p0. Инициатор p с оценкой est (p) < est (p0) не может быть выбран; p0 не передаст дальше маркер (token, p), поэтому p никогда не получит свой собственный маркер. Такой инициатор p приходит в состояние проигравший самое позднее, когда через него передается маркер (token, p0).

Рис. 30. Иллюстрация к алгоритму Чанга-Робертса

На рис. 30 изображен некоторый момент выполнения алгоритма Чанга-Робертса. На кольце расположены сайты. На внешней стороне кольца указаны их идентификаторы, на внутренней – величины оценок, на основе которых производится выбор координатора. Кружок с числом 2 – маркер (token, 2), переносящий номер сайта, для которого оценка имеет значение «31», стрелка указывает направление движения маркера. Начальный сайт при выполнении алгоритма указан звездочкой – это сайт 1 с оценкой est (1) = 24.






Дата публикования: 2014-11-18; Прочитано: 227 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...