skip to main content
article
Free Access

Experience with topaz telebugging

Published:01 November 1988Publication History
Skip Abstract Section

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.

References

  1. 1 F. Andreis, D. Briatico and G. Ingoglia. A tool for real-time debug: Cassandra. 3rd Conference-Exhibition on Software Engineering. Versailles, France. May 1986.Google ScholarGoogle Scholar
  2. 2 T. Cargill. Implementation of the Blit Debugger. Software~Practice and Experience 15(2), February 1985.Google ScholarGoogle Scholar
  3. 3 lt. Cooper. Debugging Concurrent and Distributed Programs. PhD Dissertation, University of Cambridge (to appear).Google ScholarGoogle Scholar
  4. 4 D. De Witt, R. Finkel, and M. Solomon. The Crystal multicomputer: design and implementation experience. IEEE Trans. Software Eng. 13(8), August 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 P. Fritzson. Preliminary Experience from the DICE system, a Distributed Incremental Compiling Environment. Proc ACM SIG- SOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments. Pittsburg, PA. April 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6 M. Himelstein and P. Rowell. Multi-process debugging. Proceedings USENIX Association Summer Conference. June 1985.Google ScholarGoogle Scholar
  7. 7 P. McJones and G. Swart. Evolving the Unix System Interface to Support Multithreaded Programs. Digital Equipment Corporation, Systems Research Center, Research Report 21. September 1987.Google ScholarGoogle Scholar
  8. 8 M. Richards, A Aylward, P. Bond, R. Evans and B. Knight. Tripos~A Portable Operating System for Mini-computers. Software~ Practice and Experience 9(7), July 1985.Google ScholarGoogle Scholar
  9. 9 P. tLovner, R. Levin and J. Wick. On Extending Modula-2 For Building Large, Integrated Systems. Digital Equipment Corporation, Systems Research Center, Research Report 3. January 1985.Google ScholarGoogle Scholar
  10. 10 C. Snow and W. Wong. Interactive tZemote Source-Level Debugging Tools Using Interface Monitoring. Technical Report 228, Computing Laboratory, Newcastle upon Tyne University. 1987.Google ScholarGoogle Scholar
  11. 11 D. Swinehart, P. Zellweger, R. Beach, and R. Hagmann. A structural view of the Cedar programming environment, ACM Trans. Programming Languages and Systems, 8(4), November 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12 C. Thacker, L. Stewart, and E. Satterthwaite. Firefly: A Multiprocessor Workstation. Digital Equipment Corporation, Systems Research Center, Research Report 23. December 1987.Google ScholarGoogle Scholar
  13. 13 Xerox Corporation. Xerox Development Environment Users Guide. September 1985.Google ScholarGoogle Scholar

Index Terms

  1. Experience with topaz telebugging

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM SIGPLAN Notices
            ACM SIGPLAN Notices  Volume 24, Issue 1
            Special issue: Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on parallel and distributed debugging
            Jan. 1989
            280 pages
            ISSN:0362-1340
            EISSN:1558-1160
            DOI:10.1145/69215
            Issue’s Table of Contents
            • cover image ACM Conferences
              PADD '88: Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
              November 1988
              282 pages
              ISBN:0897912969
              DOI:10.1145/68210

            Copyright © 1988 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 1 November 1988

            Check for updates

            Qualifiers

            • article

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader