Experience with topaz telebugging

  • Authors:
  • David D. Redell

  • Affiliations:
  • DEC Systems Research Center, Palo Alto, CA

  • Venue:
  • PADD '88 Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
  • Year:
  • 1988

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Topaz TeleDebug (TTD) facility provides a remote debugging capability supporting software development in the Topaz environment. Topaz is a software environment providing rich support for programming in Modula2+, and extended version of Modula 2. TTD allows uniform use of the same high level source language debugger for all debugging (both local and remote) of software at all levels of the system. Special care has been taken to maximize TTD's reliability and robustness. Our experience suggests that such a facility can be extremely useful, very dependable and quite inexpensive. It also suggests that the implementation issues can be somewhat subtle, and that correct choices in this area are vital if the promise of such a scheme is to be fully realized. This paper focuses on those implementation issues in a fair amount of detail, analyzing the limitations of our first TTD implementation and the redesign that produced a second, improved version. Our main conclusion is that the target (debuggee) end of such a facility should be implemented at the lowest possible level in the operating system, and that a uniformly applicable remote invocation (e.g. remote procedure call) facility is key to enabling this approach. We also conclude that strict adherence to layered information hiding can lead to serious difficulties in the implementation of a remote debugging protocol.The discussion should be of particular interest to others designers of remote debugging facilities. While the paper does not devote much attention to higher level issues (e.g. novel user interfaces for debugging concurrent or distributed programs) most of the ideas discussed should be applicable to a wide class of debuggers, including those with higher aspirations for debugging such programs.