Kolokwium Flashcards

1
Q

Zakończenie dynamiczne

A

Żaden proces nie będzie już nigdy uaktywniony. Pewne wiadomości są transmitowane, a pewne są dostępne.

Dterm(P) = ∀Pi∈P((passivei) ∧ (˜activate(AVi ∪ ITi)))

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Zakończenie statyczne

A

wszystkie są pasywne

wszystkie są dostępne

nie spełniony warunek uaktywnienia

Sterm(P) = ∀Pi∈P ((passivei) ∧(ITi= ∅) ∧( ¬activateiAVi))

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Dterm(P) <~> Sterm(P)

A

Oznacza, że zajście Dterm(P) doprowadzi w skończonym czasie do Sterm(P). Dterm(P) jest wcześniejszym punktem w czasie od Sterm(P), ponieważ wiadomości, które są transmitowane, kiedyś dojdą i spełnią ostatni warunek Sterma(P).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Zakończenie klasyczne

A

Wszystkie pasywne

Kanały są puste

Cterm(P) = ∀Pi∈P ((passivei) ∧ (ITi = ∅) ∧(AVi= &empty))

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Zakończenie dla modelu przetwarzania synchronicznego

A

wiadomości są dostarczcane natychmiastowo, tak więc spełnić trzeba tylko to, że wszystkie procesy są pasywne

Iterm(P) = ∀Pi∈P passivei

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Algorytm Dijkstry, Feijena, van Gasterena

A

Koncepcja ciągu cykli detekcyjnych.

Założenia: wszystkie monitory połączone w pierścień.

Kolory: white (początkowy) lub black (gdy proces wyśle wiadomość do procesu o indeksie większym - czyli do tego co już przeszedł w pierścieniu, wcześniejszy)

Wysyłanie tokena (też o jakimś kolorze)

Inicjator wysyła token white do następnika, gdy proces passivei

Reszta odbiera token, czeka na pasywny, wysyła token o kolorze procesu, potem przypisuje sobie white.

Koniec gdy white trafi do inicjatora.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Zakończenie w modelu dyfuzyjnym

A

Inicjator - może w dowolnej chwili.

Procesy są w hierarchi np. drzewo

proces angażujący to proces który jest nadawcą wiadomości

Założenia

  • aktywny zmienia się w pasywny tylko kiedy zajdzie zdarzenie wewnętrzne
  • staje się aktywny gdy otrzyma wiadomość
  • pasywny zmienia się w aktywny tylko gdy otrzyma wiadomość!

warunek uaktywnienia = model żądań OR

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Algorytm Dijkstry-Scholten’a

A

Dla modelu dyfuzyjnego

wiadomość kontrolna - SIGNAL - odpowiedź na wiadomość

Koniec kiedy otrzyma signal od wszystkich związanych procesów.

Procesy połączone w drzewo.

W dół leci wiadomość o rozpoczęciu detekcji zakończenia, a w górę lecą SIGNAL.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Algorytm Misra wymagania

A

Model asynchroniczny

Wymagania

  • niezawodność
  • porzadek wysyłania (np FIFO)

TOKEN = wiadomość kontrolna, zawiera liczbę procesów odwiedzonych przez znacznik, które były pasywne + następników procesu.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Algorytm z licznikami wiadomości Matterna

A

Atomowy model przetwarzania.

W atomowym modelu przetwarzania, czasy przetwarzania lokalnego są zaniedbywane (zerowe), a opóźnienia są związane tylko z transmisją. Można przyjąć, że procesy (uaktywniane natychmiastowo) są przez cały czas pasywne i sprowadzić problem detekcji zakooczenia do wyznaczania stanów kanałów. Przyjmijmy dla uproszczenia, model żądao typu OR. Oznacza to, że dowolna wiadomośd w kanale uaktywni proces.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Kiedy Trzeba sprawdzić czy rc1=sc1=rc2=sc2? (alg z licznikami wiadomości Matterna)

A

Tb1<te1></te1>

<p></p>

<p>Trzeba sprawdzić czy rc1=sc1=rc2=sc2</p>

<p></p>

<p>Jesli t1 &lt; t2 dla dowolnego procesu to:</p>

<p>* Liczba wysłanych w chwili t1 &lt;= liczba wysłanych w chwili t2<br></br>* Liczba odebranych w chwili t1 &lt;= liczba odebranych w chwili t2<br></br>* Suma wysłanych w chwili t1 &lt;= suma wysłanych w chwili t2<br></br>* Suma odebrańych w chwili t1 &lt;= suma odebranych e chwili t2<br></br>* Rc1 &lt;= suma odebranych w chwili te1<br></br>* Suma wysłanych w chwili tb2 &lt;= sc2</p>

<p></p>

<p>Z niezawodności wynika ze dla każdej chwili suma odebranych &lt;= sumy wysłanych.</p>

<p></p>

<p>Podsumowując</p>

<p>Rc1 &lt;= suma odebranych w te1 &lt;= suma wysłanych w te1 &lt;= suma wysłanych w tb2 &lt;= sc2</p>

<p></p>

<p>Z założenia rc1 = sc2 tak wiec</p>

<p></p>

<p>Rc1 = suma odebranych w te1 = suma wyslańych w te1 = suma wysłanych w tb2 = sc2</p>

</te1>

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Jednorazowy alg. Detekcji zakończenia

A

Założenie

* Połączone w pierścień
* Id
* Nr sekwencyjny
* Suma liczników
* Flagę invalid

MaxDetectNo - nr sekwencyjny wiadomosci wysłanej najpóźniej spośród wszystkich odebranych.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wektorowy algorytm detekcji zakończenia

A

Procesy ńie zawsze sie ze sobą komunikują

Monitory w pierścień

Token zawiera wektor zawierający sumę wektorowych liczników monitorów odwiedzonych juz w detekcji.

Wektorowe liczniki trzymają info o tym ile juz wysłał i ile odebrał.

Firstwave == true gdy monitor otrzymał znaczńik porażka pierwszy

Cechy

* Brak etykiet
* Zatrzymańie znacznika
* W sposób ciągły
* Wada? Sporo info

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Jednostkowy model żadań

A

Od ścisle określonego odbiorcy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Model żądań and

A

Od wszystkich ze zbioru warunkowego

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Model żądań or

A

Od któregokolwiek ze zbioru warunkowego

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Model żądań k spośród r

A

Od conajmniej ki rożnych procesów ze zbioru warunkowego

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Model żądań or-and

A

Od każdego z procesów tworzących zbiór di1 lub od każdego tworzących zbiór di2 lub …. Lub od każdego ze zbioru d

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Model żądań predykatywny

A

Dla każdego passywnego procesu ze zbioru warunkowego Di określony jest prefekta activate(x) gdzie x to podzbiór zbioru procesów. Dzięki temu mozna uzyskać dowolny poprzedni model.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Dysjunkcyjny model k spośród r

A

Od ki1 rożnych z di1 lub …lub od kini rożnych z dini

Redukuje sie do

* Or-and gdy każda ki jest równe liczbie elementów w zbiorze Di
* K spośród r gdy ilosc zbiorów różna sie 1 (ni=1)
* And gdy ilosc zbiorów równa sie 1 i każda ki jest równa liczbie elementów z zbiorze Di
* Or gdy ilosc zbiorów równa sie 1 i ki1 = 1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Algorytm Lamporta

A

Wyślij

Clock = clock + d

Odbierz

Clock = max(clock, clockR) + d

Poźniejszy + d

Clock = zegar aktualnego procesu

ClockR = zegar otrzymany w wiadomosci

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Algorytm Matterna

A

Wyślij

Clock[i] = clock[i] + d

Moj wektor na pozycji mojego id

Odbierz

Clock[k] = max(clock[k], clockR[k]) + d

Clock[i] = clock[i] + d

Moj wektor ma pozycji mojego id

Moj wektor na pozycji id procesu od którego odebrałam wiadomość o wartość czasu późniejszego.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Definicja zakleszczenia

A
  1. Wszystkie procesy niepisanego zbioru oczekują na wiadomość od innych procesów tego zbioru.
  2. Oczekują na zdarzenie, ktore nigdy nie nastąpi.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

4 warunki zakleszczeń

A
  1. Żądanie wyłącznego dostępu do zasobu.
  2. Przetrzymywanie zasobów gdy czekają na inne.
  3. Niemożność usunięcia zasobu z procesu oczekującego.
  4. Istnieje pierścień procesów, w którym każdy z nich przytrzymuje jeden lub wiecej zasobów wymaganych przez następny proces w łańcuchu.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Alg Bracha, Toueg’a

A

Done na każde notify

ACK na każdy confirm

Confirm na notify gdy nie ma “następników”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Detekcja zakończenia Dla modelu asynchronicznego

A

4 kolory

gray - request

black - request, odbiór

white - request, odbiór, grant

translucent - coś tam i nie odebrany cancel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Założenia algorytm Chandy-Lamporta

A

Założenia

* Niezawodne kanały
* Stan = złożenie lokalnych stanów procesów oraz kanałów
* Asynchroniczna komunikacja i przetwarzanie
* Brak zegara globalnego

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Złożoność Algorytm Chandy-Lamporta

A

* Czasowa d+1 (d- średnica grafu)
* Komunikacyjna 2E

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Inicjator Algorytm Chandy-Lamporta

A

Inicjator

  1. Inicjuj
  2. Zapisz stan procesu.
  3. Wyślij marker do incydentnych.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Każdy Proces Algorytm Chandy-Lamporta

A

Odbior pierwszego znacznika

  1. Zapamiętaj stan procesu.
  2. Wyślij marker do incydentnych.

Odbiór wiadomosci po zapisaniu stanu

Dodaj wiadomość do stanu kanału nadawcy.

Odbiór kolejnego znacznika

Inkrementuj liczbę odebranych znaczników.

Odebrano wszystkie znaczniki

Wyslij stan procesu i kanałów do inicjatora.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Spójność? Algorytm Chandy-Lamporta

A

Każdy proces zapisuje i wysyła znacznik co najwyżej raz! Z tego wynika że koniec bedzie w skończonym czasie ponieważ wystarczy by jeden zapisał aby zapisały wszystkie. Dzieje sie tak ponieważ ze sobą sąsiadują (połączone w sieć).

Spójność gwarantują kanały Fifo. Każda wiadomosc wysłana przed znacznikiem, rownież przed nim dojdzie.

32
Q

Idea Algorytm Lai-Yang

A

NIE WYMAGA FIFO!

Reprezentacja stanów = historia wykonywania (zbiór wiadomosci wysłanych i odebranych)

Kolory

* White - proces nie zapamiętał stanu/wiadomość bez znacznika
* Red - proces zapamiętał stan/wiadomość ze znacznikiem

Każdy na poczatku jest white i zmienia na red po tym jak zapisze swój stan.

Gdy dojdzie pierwsza wiadomość ze znacznikiem to najpierw zapisz stan a potem dostarcz wiadomość do procesu.

33
Q

Złożoność Algorytm Lai-Yang

A

* Czasowa - 1
* Komunikacyjna - n-1

34
Q

Spójna? Algorytm Lai-Yang

A

Wiadomość M wysłana po zapisie stanu przez Pi nie zostanie uwzględniona w stanie Pj, ponieważ odbierając wiadomość Red najpierw zapisujemy stan procesu, a potem dostarczamy.

35
Q

Algorytm Matterna

A

Dla nonFIFO

Wyznacza sie punkt w przyszłości na czasach wektorowych, w którym to wszystkie procesy maja jednocześnie zapisać swój stan i wysłać do inicjatora.

Na czas propagacji przyszłego czasu zapisu wstrzymywane jest przetwarzanie aplikacyjne. Dopiero po zebraniu wszystkich ACK i wznowieniu przetwarzania inicjator zapisuje swój stan i rozsyła wszystkim wiadomość że on już zapisał. Inicjator nie bierze dalej udziału w przetwarzaniu tylko czeka na wszystkie stany.

Reszta procesów gdy odbiera wiadomości uaktualnia wektory zegarów. Gdy przekroczy punkt zapisu, to najpierw wysyła stan do inicjatora, a potem odbiera wiadomość. Natomiast gdy odebrano wiadomość a stan jednak został juz wcześniej zapisany to wyślij tą wiadomość do inicjatora jako stan kanału.

36
Q

Alg kolorujacy procesy i wiadomości

A

Dwa kolory

* White - przed zapisem
* Red - po zapisie

Stan kanału to wisdomości white odebrane przez proces Red. Są one wysyłane do inicjatora przy kazdym odbiorze.

Podobny do Lai-Yanga. Różnica? Prostsza reprezentacja stanu lokalnego. Zamiast całej historii jedt dodany mechanizm wyznaczania stanów w kanale.

Wada? Problem? Kiedy zakończyć przetwarzanie.

37
Q

Alg Chandy-Lamporta dla kanałów FC

A

Marker jedt znacznikiem TF - nie wyprzedza żadnej wiadomości i nie pozwala sie wyprzedzić.

Znaczy to ze wisdomości moga sie dowolnie wyprzedzać ale marker jest stałym punktem w kanale ktory oddziela te z konfiguracji i te spoza.

38
Q

Alg ze znacznikami BF i FF

A

Stany lokalne zapisywane sa w wyniku odebrania znacznika BF (nie pozwala sie wyprzedzić).

Pakiety wysyłane po zapisie dotrą po dostarczeniu wiadomości BF i zapisie odbiorcy.

Od momentu zapisu - zapisz wszystkie wiadomości do otrzymania znacznika FF (nie wyprzedza). Jedt to stan kanału.

39
Q

Cechy Podstawowe rozgłaszanie niezawodne

A

* Ważność - własność żywotności, jeśli nadawca i odbiorca poprawne to zostanie dostarczona wiadomość
* Brak powielania - co najwyżej raz
* Brak samogeneracji - jeśli odbiorca dostaje wiadomość to znaczy, że istnieje jakiś nadawca, który ją wysłał

40
Q

Założenia Podstawowe rozgłaszanie niezawodne

A

* Kanały niezawodne
* Deterministyczne i poprawne działanie
* Model przetwarzania z ukrytymi awariamii

41
Q

Złożoność Podstawowe rozgłaszanie niezawodne

A

* Czasowa = 1
* Komunikacyjna = n

42
Q

Cechy Zgodne rozgłaszanie niezawodne

A

* Ważność
* Brak powielania
* Brak samogeneracji
* Zgodność - jeśli poprawny proces odebrał to reszta poprawnych procesów też odbierze; + ważność - wiadomość rozesłana przez poprawny proces zostanie odebrana przez wszystkie poprawne.

43
Q

Zgodne rozgłaszanie niezawodne pasywny

A

Gwarancja zgodności? Retransmisja w chwili wykrycia awarii nadawcy.

Założenia

* Doskonały detektor awarii
* Podstawowe rozgłaszanie niezawodne
* Model z jawnymi awariami

44
Q

Zgodne rozgłaszanie niezawodne aktywny

A

Gwarancja zgodności? Retransmisja przez każdy proces natychmiast po jej otrzymaniu.

Założenia

* Brak doskonałego detektora awarii
* Podstawowe rozgłaszanie niezawodne.
* Model ukrytych awarii.

45
Q

Zgodne rozgłaszanie niezawodne Złożoność

A

Optymistyczny

czasowa 1

komunikacyjna N2

Pesymistyczny

czasowa N

komunikacyjna N2

46
Q

Idea Zgodne rozgłaszanie niezawodne

A

Jeśli ktokolwiek odebrał to zapewne zostanie dostarczone nawet jak nadawca uległ awarii.

47
Q

Idea Podstawowe rozgłaszanie niezawodne

A

Odpowiedzialność na nadawcę.

Nadawca śle do wszystkich.

48
Q

Ważność

A

własność żywotności, jeśli nadawca i odbiorca poprawne to zostanie dostarczona wiadomość

49
Q

Brak powielania

A

co najwyżej raz

50
Q

Brak samogeneracji

A

jeśli odbiorca dostaje wiadomość to znaczy, że istnieje jakiś nadawca, który ją wysłał

51
Q

Zgodność

A

jeśli poprawny proces odebrał to reszta poprawnych procesów też odbierze; + ważność - wiadomość rozesłana przez poprawny proces zostanie odebrana przez wszystkie poprawne.

52
Q

Wymóg Jednolite rozgłaszanie niezawodne

A

Wymóg = zbiór wiadomości dostarczonych przez procesy niepoprawne zawsze był podzbiorem zbioru wiadomości odebranych przez procesy poprawne.

53
Q

Cechy Jednolite rozgłaszanie niezawodne

A

Cechy

* Ważność
* Brak powielania
* Brak samogeneracji
* Jednolita zgodność - jeśli jakaś wiadomość zostanie odebrana przez pewien proces to ostatecznie wszystkie poprawne procesy ją odbiorą

54
Q

Jednolite rozgłaszanie niezawodne z potwierdzeniami od wszystkich

A

Odbiór = gdy zaobserwował retransmisje od wszystkich.

Założenia

* Jednolite rozgłaszanie niezawodne w modelu jawnych awarii
* Podstawowe rozgłaszanie niezawodne
* Doskonały detektor awarii
* Niezawodne kanały komunikacyjne

55
Q

Jednolite rozgłaszanie niezawodne z potwierdzeniami od większości

A

Odbiór = gdy zaobserwował retransmisje od większości.

Wymóg = większość procesów nie ulega awarii.

Założenia

* Podstawowe rozgłaszanie niezawodne
* Brak detektora awarii
* Model z ukrytymi awariami

56
Q

Jednolite rozgłaszanie niezawodne Złożoność

A

Optymistyczny

czasowa 2

komunikacyjna n2

pesymistyczny

czasowa n+1

komunikacyjna n2

57
Q

Jednolita zgodność

A

jeśli jakaś wiadomość zostanie odebrana przez pewien proces to ostatecznie wszystkie poprawne procesy ją odbiorą

58
Q

Probabilistyczny algorytm rozglaszania niezawodnego

A

Problem implozji potwierdzeń - gdy duzo luda i trzeba zebrać odp to może wpłynąć na zużycie zasobów, szybkość itd.

Rozwiązanie? Poprzez układ w drzewa - jednak dłużej się zbiera!

59
Q

Probabilistyczny algorytm rozglaszania niezawodnego alg epidemiczne/plotkarskie

A

Założenia

* Probabilistyczny algorytm rozgłaszania niezawodnego
* Ważność - określone jest prawdopodobieństwo, że jeśli 2 procesy poprawne to kazda wiadomość będzie między nimi dostarczona z tym prawdopodobieństwem.
* Brak powielania
* Brak samogeneracji
* Więcej wiadomości
* Mniejsza liczba rund
* Większa ilość wiadomości nadmiarowych

60
Q

Probabilistyczny algorytm rozglaszania niezawodnego aktywny

A

Założenia

* Kanały rzetelne

Co najwyżej r rund.

W każdej rundzie co najwyżej k wiadomości.

Przy każdym odbiorze dekrementacja liczby rund przed ponownym wysłaniem (żywotność wiadomości?)

61
Q

Probabilistyczny algorytm rozglaszania niezawodnego pasywny

A

Wymagania

* Algorytm rozgłaszania
* Mechanizm plotkowania
* Rzetelne kanały

Rozgłaszanie za pomocą dowolnego algorytmu.

W celu retransmisji zgubionych wiadomości użyj mechanizmu plotkowania za pomocą zawodnych operacji komunikacyjnych łącz rzetelnych.

Każdy może retransmitować, tak więc trzeba będzie przechowywać gdzieś tą wiadomość.

Fakt zgubienia -> wykrywany przez licznik wysłanych wiadomości dołączonego do każdej wiadomości jako numer sekwencyjny. Gdy zauważymy brak, rozsyłamy prośbę o nadesłanie brakującej wiadomości za pomocą mechanizmu plotkowania.

Jeśli prośba nie trafi do odpowiednich monitorów to po jakimś czasie monitor proszący zwiększa numer sekwencyjny następnej wiadomości, akceptując tym samym utratę jednej wiadomości.

Jeśli odbierzesz prośbę o retransmisję i masz wiadomość to odsyłasz ją. W przeciwnym wypadku należy przesłać prośbę dalej na warunkach algorytmu plotkowania (czyli tylko jeśli liczba rund jest większa od 0).

Jeśli otrzymasz wiadomość retransmitowaną, dostarcz ją, a następnie sprawdź, czy istnieją jakieś wiadomości oczekujące w zbiorze pending.

62
Q

Założenia Zgodne rozgłaszanie niezawodne z przyczynowym uporządkowaniem wiadomości

A

* Zgodne rozgłaszanie niezawodne
* Przyczynowe uporządkowanie
* Brak detektora awarii

63
Q

Cechy Zgodne rozgłaszanie niezawodne z przyczynowym uporządkowaniem wiadomości

A

* Ważność
* Brak powielania
* Brak samogeneracji
* Zgodność
* Przyczynowe uporządkowanie - jeśli proces dostarczone są Mk i Mi przy czym zdarzenie wysłania Mk przyczynowo zależy od mmj to Mj odbierana jest przed Mk, czyli przed dostarczeniem dowolnej M proces musi dostarczyć wszystkie od których przyczynowo zależy.

64
Q

Idea Zgodne rozgłaszanie niezawodne z przyczynowym uporządkowaniem wiadomości

A

Wyślij

* Wiadomości do zbioru past
* Gdy zostały już odebrane wszystkie wcześniejsze
* Dołącz do zbioru past

Złożoność - jak zgodnego rozgłaszania niezawodnego

Wada? Rosnący zbiór past, czyli wzrost złożoności komunikacji bitowej.

Ten algorytm nie ma zastosowania w praktyce.

65
Q

Przyczynowe uporządkowanie

A

jeśli proces dostarczone są Mk i Mi przy czym zdarzenie wysłania Mk przyczynowo zależy od mmj to Mj odbierana jest przed Mk, czyli przed dostarczeniem dowolnej M proces musi dostarczyć wszystkie od których przyczynowo zależy.

66
Q

Poprzedzanie przyczynowe

A

M1 poprzedza przyczynowo M2, jeśli zdarzenie wysłania M2 zależy przyczynowo od zdarzenia M1 i zachodzi jedna z 3 sytuacji:

  1. Obie wiadomości są wysłane przez ten sam proces. M1 przed M2
  2. Wiadomość M1 jest odebrana przez proces a następnie po tym M2 zostaje przez niego rozgłoszona.
  3. Istnieje taka wiadomość M’ dla której pary M1 i M’ oraz M’ i M2 spełniają którąś z poprzednich dwóch sytuacji.
67
Q

Cechy Zgodne rozgłaszanie niezawodnege z globalnym uporządkowaniem wiadomości

A

* Ważność
* Brak powielania
* Brak samogeneracji
* Zgodność
* Globalne uporządkowanie

68
Q

AKA Zgodne rozgłaszanie niezawodnege z globalnym uporządkowaniem wiadomości

A

Rozgłaszanie atomowe

69
Q

Założenia Zgodne rozgłaszanie niezawodnege z globalnym uporządkowaniem wiadomości

A

* Niezawodność FIFO
* Zgodne rozgłaszanie niezawodne
* Poprawność wszystkich procesów

70
Q

Idea Zgodne rozgłaszanie niezawodnege z globalnym uporządkowaniem wiadomości

A

Odbiór

* Monitor aktualizuje numer seryjny ostatniej wiadomości i dodaje do pending
* jeśli ity < od odebranego - zmienić ity na odebrany - informuj monitory rozgłaszając update
* Ustaw jty na odebrany
* Gdy posiada największy licznik spośród otrzymanych, jednak nie większy od wszystkich elementów

71
Q

Złożoność Zgodne rozgłaszanie niezawodnege z globalnym uporządkowaniem wiadomości

A

czasowa 2

komunikacyjna n2

72
Q

Algorytm Misra kroki

A

1) proces wysyła token do następnika w cyklu

2) otrzymanie = uaktywnienie + dostarczenie + zmiana koloru na black
3) wysyła dalej gdy obserwowany == passywny?
4) czarny? ilość odwiedzonych = 0
5) !czarny? ilość odwiedzonych ++
6) kolor następnika na white
7) przesyłaj dalej do następnika znacznik.

73
Q

Algorytm Misra wymóg

A

Znacznik musi przejść cykl dwa razy, a każdy proces musi być pasywny w tym czasie.

74
Q

Algorytm Misra inicjator

A

Inicjator : jeśli token biały i liczba odwiedzonych == ilość

koniec

jeśli nie to wysyła znacznik dalej

75
Q

Algorytm Misra cechy

A

Cechy

  • dowolna topologia
  • wiele detekcji równolegle
  • cykle muszą być znane z góry
76
Q

Algorytm Misra opis

A

Algorytm wykorzystuje dwa typy wiadomości: PACKET i TOKEN. Drugi z nich oznacza specjalną wiadomośd kontrolną- znacznik- przesyłana między monitorami, zawierające pole , które oznacza z kolei liczbę procesów odwiedzonych przez znacznik, które były pasywne. Zmienna oznacza następnik procesu w cyklu, obejmującym wszystkie kanały komunikacyjne. Związane jest to z wymaganiem, by znacznik typu TOKEN odwiedził wszystkie kanały łączące procesy. to zbiór
wszystkich kanałów, tworzących cykl, obejmujący wszystkie kanały komunikacyjne.

77
Q
A