Presentation is loading. Please wait.

Presentation is loading. Please wait.

Raymond Mutual Exclusion

Similar presentations


Presentation on theme: "Raymond Mutual Exclusion"— Presentation transcript:

1 Raymond Mutual Exclusion

2 Actions <Upon request>  Request.(h.j) = Request.(h.j)  {j}
h.j = k /\ h.k = k /\ j Request.k h.k = j, h.j = j, Request.k = Request.k – {j}

3 Actions h.j = j Access critical section

4 Slight modification h.j = k /\ h.k = k /\ j Request.k /\
(P.j = k \/ P.k = j) h.k = j, h.j = j, Request.k = Request.k – {j}

5 Fault-Tolerant Mutual Exclusion
What happens if the tree is broken due to faults? A tree correction algorithm could be used to fix the tree Example: we considered one such algorithm before

6 However, Even if the tree is fixed, the holder relation may not be accurate

7 Invariant for holder relation
What are the conditions that are always true about holder relation?

8 Invariant h.j {j, P.j}  ch.j P.j  j  (h.j = P.j \/ h.(P.j) = j)
Plus all the predicates in the invariant of the tree program

9 Recovery from faults h.j  {j, P.j}  ch.j h.j = P.j

10 Recovery from faults P.j  j /\  (h.j = P.j \/ h.(P.j) = j) 

11 Recovery from Faults P.j  j /\ (h.j = P.j /\ h.(P.j) = j) 
h.(P.j) = P.(P.j)

12 Notion of Superposition


Download ppt "Raymond Mutual Exclusion"

Similar presentations


Ads by Google