skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: A knowledge-based system for debugging concurrent software

Book ·
OSTI ID:5045845

The recent development of high-level concurrent programming languages has emphasized the problem of limited debugging tools to support the development of applications using these languages. A new approach is necessary to improve the efficacy of debugging tools and to adapt them to the framework of a concurrent software environment. A knowledge-based debugging approach is presented that aids diagnosis of a variety of run-time errors that can occur in concurrent programs written in the programming language. Ada in this approach, an event stream of program activity is captured in an historical database and accessed using Prolog queries extended with temporal-logic predicates. Diagnosis is aided by applying rule-based descriptions of some common classes of software errors and by matching program specifications against the trace database. This approach was used in building a prototype debugger, called Your Own Debugger for Ada (YODA). The design of YODA is described and analyses of several sample Ada programs are presented to illustrate diagnosis of errors associated with concurrency, including deadness errors and misuse of shared data.

OSTI ID:
5045845
Country of Publication:
United States
Language:
English