H8: Coordination Flashcards

(26 cards)

1
Q

Wat zijn de regels voor distributed mutual exclusion? (3)

A
  • Geen shared variables tussen processen
  • Geen OS support
  • Alleen message passing wordt gebruikt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Welke failure modes zijn er bij het Mutual Exclusion probleem? (3)

A
  • Kanaal fouten
  • process fouten
  • processen gedragen zich (verlaten kritische zone uiteindelijk)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wat zijn de metrics van een goede Mutual Exclusion Issue oplossing? (3) Welke zijn verplicht?

A
  • Safe: max 1 in kritische sectie tegelijk
  • Liveliness: Elke process entered / leaved uiteindelijk, geen starvations en deadlocks
  • Fair (Bonus): logische clock
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Welke commands in kritische sectie API? (3)

A
  • enter()
  • resourceAccess()
  • exit()
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wat zijn de evaluatie metrics kritische sectie probleem? (3)

A
  • Bandwith consumption: Aantal message om kritische sectie te leaven / enteren
  • Client Delay: tijd om kritische sectie te enteren / verlaten. Gemeten bij UNLOADED systeem, dit gaat over het netwerk delay
  • System throughput: Hoeveel processen kunnen per tijdseenheid kritische sectie in. Hangt af van access time natuurlijk, dus om te meten gebruiken we de synchronisatie-delay.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Wat is synchronisatiedelay?

A

De gemiddelde tijd tussen vorige process dat leaved en nieuw process dat entered.

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

Hoe werkt het centrale server algoritme?

A

Een process request access aan de server, server grant het of zet het in queue. Granting wordt met een token gedaan die gelijk is aan het huidige process id in de kritische sector of gelijk aan -1.

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

Waarom centrale server algoritme OK?

A
  • Safe: Token variable guard het
  • Liveliness: elke process entered en kan altijd leaven
  • Fairness: Queue FIFO
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wat zijn de evaluatie metrics van het centrale server algoritme?

A
  • Bandwith: 3 messages
  • Client delay: 2s (want leave blokt niet)
  • Synchronisatie delay: 2s (leave + grant)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Hoe werkt het ring-based algoritme?

A

Token wordt doorgegeven totdat een proces hem nodig heeft.

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

Is het ring-based algoritme OK?

A
  • Safe: er is maar 1 token
  • Liveliness: Geen starvation + token wordt altijd doorgegeven
  • Fair: Nee, moet geluk hebben
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wat zijn de evaluatie metrics van het ring algoritme?

A
  • bandwith: (N + 1)/2
  • client delay: Ns/2
  • synchronisatie delay: (N + 1)s/2
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Hoe werkt Ricard-Agrawala?

A

Multicasten tot alle andere processen het eens zijn. Elk proces heeft 3 staten: “Released, Wanted en Held”. Gebruikt Lamport clock (logische clock) en queue voor requests.

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

Is Ricard-Agrawala OK?

A
  • Safe: Heel bewijs, maar komt neer op dat (Ti, Pi) < (Tj, Pj) bij wanted zit.
  • Liveliness: Elk request is eventually granted
  • fair: FIFO
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Wat zijn de evaluatie metrics van Ricard-Agrawala?

A
  • Bandwidth: N + (N-1) = 2N - 1
  • Client delay: 2s
  • Synchronisatie delay: 1s
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Hoe werkt Maekawa Voting?

A

Voting sets, moet alle votes hebben.

17
Q

Hoe groot zijn de voting sets?

A

liefst sqrt(N), maar IRL meestal 2sqrt(N)

18
Q

Is Maekawa Voting OK?

A
  • Safety: Ja, elk proces kan maar voor 1 proces voten en votings sets hebben altijd doorsnede
  • Liveliness: Prone tegen deadlock als doorsnede van 2 votings sets 2 is, en beide anders gevote zijn
  • Fairness: Starvation kan zeker gebeuren
    Oplossing: Lamport clocks
19
Q

Wat zijn voor Maekawa Voting de evaluatie metrics?

A
  • Bandwidth: 2KM + KM
  • Client delay: 2s
  • Synchronisatie Delay: 2s
20
Q

Wat zijn de metrics van OK Elections? (2)

A
  • Safety: Elke participant moet Electedi = ? of Electedi = P, met P het proces wat gekozen is.
  • Liveliness: Alle processen pi doen mee, uiteindelijk oftewel een participant verkozen, oftewel crash
21
Q

Wat zijn de Evaluatie Metrics van elections? (2)

A
  • Bandwidth: Messages voor election
  • Turnaround time: time needed voor election
22
Q

Hoe werkt het Ring Algoritme van Chang-Roberts?

A

In ring gaan en zoeken tot proces met grootste ID, als een election message krijg met je eigen id, elect je jezelf en stuurt iedereen deze election message door.

23
Q

Is Chang-Roberts OK?

A
  • Safety: Ja, kan maar 1 proces geforward worden omdat ID’s unique zijn
  • Liveliness: Cirkel stopt uiteindelijk na max 3 rotaties
24
Q

Wat zijn de evaluatie metrics van Chang-Roberts?

A
  • Bandwidth: 2NM tot (3N-1)M -> (5N-1)M/2
  • Turnaround time: 2Ns tot (3N-1)s -> (5N-1)s/2
25
Hoe werkt het bully algorithm van Garcia-Molina?
De sterkste bepaald. Iedereen houd een lijst met grotere processen bij. Nieuwe verkiezingen? leiders bepalen. Niet op tijd reactie? Dan ben ik leider.
26
Is garcia-Molina OK?
- Safety: alleen als er geen replacements zijn (zodat max kan veranderen) - Liveness: In elke case een coordinator verkozen.