CS 6/73201 "Advanced Operating Systems" HOMEWORK #3 Due in class on 12/04/2007 1. A system has five processes: a,b,c,d, and e. Describe how the knot calculation algorithm may work if "a" is initially dead: list a possible computation and the resultant knot that the algorithm produces. Explain your answer. 2. A system has five processes: a,b,c,d, and e. The system runs a simple renaming algorithm. Process "a" crashes after broadcasting the first message. Show a possible computation the the resultant identities that the processes obtain. Explain your answer. 3. (Tel 16.3) The requirement of strong accuracy is stronger than the requirement that no correct process is ever suspected: \forall F: \forall H \in D(F): \forall T: \forall p \in correct(F), q \not\in F(t): p \not\in H(q,t) Give an example of a failure pattern and failure detector history that satisfies this property yet violates strong accuracy. 4. Give an example of a computation of S-based detector-based consensus algorithm where _|_ (bottom) is assigned to an element of V for some process in Phase 2. 5. Give an example of a computation of Diamond S detector-based consensus algorithm where two processes decide in different rounds. 6. Consider Lamport's Byzantine agreement algorithm with four generals. Assume the commanding general is a traitor. According to the algorithm, the loyal lieutenants have to come to an agreement whether to attack or retreat. Give an example where the traitorous commander behaves incorrectly yet the lieutenants decide to attack; decide to retreat. According to the algorithm, what determines whether the loyal lieutenants decide to attack or two retreat?