Debugging heterogeneous distributed systems using event-based models of behavior
- 1 February 1995
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computer Systems
- Vol. 13 (1), 1-31
- https://doi.org/10.1145/200912.200913
Abstract
We describe a high-level debugging approach, Event-Based Behavioral Abstraction (EBBA), in which debugging is treated as a process of creating models of expected program behaviors and comparing these to the actual behaviors exhibited by the program. The use of EBBA techniques can enhance debugging-tool transparency, reduce latency and uncertainty for fundamental debugging activities, and accommodate diverse, heterogeneous architectures. Using events and behavior models as a basic mechanism provides a uniform view of heterogeneous systems and enables analysis to be performed in well-defined ways. Their use also enables EBBA users to extend and reuse knowledge gained in solving previous problems to new situations. We describe our behavior-modeling algorithm that matches actual behavior to models and automates many behavior analysis steps. The algorithm matches behavior in as many ways as possible and resolves these to return the best match to the user. It deals readily with partial behavior matches and incomplete information. In particular, we describe a tool set we have built. The tool set has been used to investigate the behavior of a wide range of programs. The tools are modular and can be distributed readily throughout a system.Keywords
This publication has 5 references indexed in Scilit:
- The TFTP Protocol (Revision 2)Published by RFC Editor ,1992
- A distributed programs monitor for berkeley UNIXSoftware: Practice and Experience, 1986
- Debugging a Distributed Computing SystemIEEE Transactions on Software Engineering, 1984
- Programmers use slices when debuggingCommunications of the ACM, 1982
- Time, clocks, and the ordering of events in a distributed systemCommunications of the ACM, 1978