Sr-7-wyk-2.0-Slajd3

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Algorytm tyrana

Algorytm tyrana


Algorytm tyrana (ang. bully algorithm ) jest pierwszym z dwóch algorytmów elekcji, które zaprezentujemy.

Kiedy proces zauważa, że koordynator nie odpowiada już na żądania, rozpoczyna elekcję.

Proces P wysyła wiadomość ELEKCJA do wszystkich procesów z wyższą liczbą. Jeżeli nikt nie odpowiada, P wygrywa elekcję i staje się koordynatorem. Jeżeli natomiast odpowie jeden z procesów o wyższej liczbie, to ten proces przejmuje zadanie.

W dowolnym momencie proces może otrzymać wiadomość ELEKCJA od jednego z procesów o niższej liczbie. Kiedy taka wiadomość dotrze, odbiorca odsyła z powrotem do nadawcy wiadomość potwierdzającą, że działa i przejmuje kontrolę. Odbiorca podtrzymuje wtedy proces elekcji, jeżeli jej nie przeprowadzał do tej pory.

W końcu wszystkie procesy za wyjątkiem jednego zaprzestają elekcji i właśnie ten jedyny proces staje się koordynatorem. Ogłasza on następnie swoje zwycięstwo poprzez rozesłanie do wszystkich procesów wiadomości z informacją, że jest nowym koordynatorem.


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