CS 594: Distributed Systems

Spring 2010
Micah Beck instructor

Midterm Exam 10/4
Due 3/3 in class.
Each problem is worth 5 points.

  1. Do problem 4.3 on page 62 of Garg.

  2. Do problem 5.4 on page 87 of Garg.

  3. Do problem 6.7 on page 110 of Garg. How can you address the fault-tolerance problem? Since we have not covered fault tolerance in class, you should apply outside research to your answer. Creativity is encouraged!

  4. Do problem 7.6 on page 126 of Garg.

  5. The Global Snapshot algorithms presented in Chapter 9 of Garg can be used to create a single consistent cut through the global state of a distributed system. If we allow a second snapshot to be initiated before the first one completes, the space used in algorithms like checkpointing that are based on global snapshot can increase without bound.

    Give a global snapshot algorithm which can be invoked multiple times, but which has the property that if an instance of the algorithm has already been initiated, a new instance will not begin until after the previous one has completed on every node of the system.

    Your algorithm should begin taking each snapshot as soon as possible (a node should not continue to wait once it knows that the previous instance of global snapshot has already completed on every node).