Popis: |
Event visualization tools are commonly used to facilitate the debugging of parallel or distributed applications, but they are insufficient for full debugging purposes. The need for traditional debugging operations, such as single stepping, is often overlooked in these tools. When integrating such operations, the issue of concurrency needs to be addressed. This paper justifies and describes three single-stepping operations that we found suitable for partially-ordered executions: global-step, step-over and step-in. The description of these operations is based on a sound theoretical framework. This framework can serve as a basis to extend the operations to deal with specific properties of event visualization tools. For example, abstraction techniques are often used to reduce the overwhelming amount of detail presented to the user when visualizing non-trivial executions. These abstraction operations introduce additional problems for single stepping. The paper discusses the problems induced by two different abstraction operations in the context of a specific event visualization tool, Poet, and describes how the single-stepping operations are adapted to deal with these problems. |