I present a general framework for observing and controlling a distributed computation and its applications to distributed debugging. Algorithms for observation are useful in distributed debugging to stop a distributed program under certain undesirable global conditions. I present the main ideas required for developing e cient algorithms for observation. Algorithms for control are useful in debugging to restrict the behavior of the distributed program to suspicious executions. It is also useful when a programmer wants to test a distributed program under certain conditions. I present di erent models and their limitations for controlling distributed computations.
Vijay K. Garg