Debugging distributed implementations of modal process systems

  • Ken Hines
  • Gaetano Borriello
Refereed Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1474)


From the perspective of performance and parts cost, distributed architectures are often superior to single processor architectures for embedded systems designs. Despite this, embedded system designers still tend to use single processors whenever possible. One of the main reasons for this is that the additional costs in design and maintenance of distributed systems can far outweigh the lower parts cost and lower power consumption that might result from a distributed implementation. This is largely because most distributed models are limited in the system level abstraction that can be derived.

The modal process model [2] for embedded system design has been suggested as a way of addressing many of these issues. This model maps quite naturally to distributed implementations, while preserving unifying information from higher levels of abstraction. While this model provides numerous benefits as far as modularity and ease of composition, it also enhances the designers ability to debug such systems by enabling new debugging techniques. This paper discusses some debugging techniques enabled by the modal process model, and describes how these may be used.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Chou, P., and Borriello, G. An analysis-based approach to composition of distributed embedded systems. In Codes ’98 (March 1998).Google Scholar
  2. 2.
    Chou, P., and Borriello, G. Modal processes: Towards enhanced retargetability through control composition of distributed embedded systems. In Proceedings of the 35th annual Design Automation Conference (1998).Google Scholar
  3. 3.
    Chou, P., Hines, K., Partridge, K., and Borriello, G. Control generation for embedded systems based on composition of modal processes. Submitted to ICCAD ’98.Google Scholar
  4. 4.
    Hines, K., and Borriello, G. Dynamic communication models in embedded system cosimulation. In Proceedings of the 34th annual Design Automation Conference (June 1997).Google Scholar
  5. 5.
    Hines, K., and Borriello, G. Selective focus as a means of improving geographically distributed embedded system co-simulation. In Rapid Systems Prototyping ’97 (June 1997).Google Scholar
  6. 6.
    Kunz, T.Abstract Behaviour of Distributed Executions with Applications to Visualization. PhD thesis, Technische Hochschule Darmstadt, Darmstadt, Germany, May 1994.Google Scholar
  7. 7.
    Kunz, T. High-level views of distributed executions. In Proceedings of the 2nd International Workshop on Automated and Algorithmic Debugging (1995).Google Scholar
  8. 8.
    Lamport, L. Time, clocks and ordering of events in a distributed system. Communications of the ACM 21, 7 (July 1978), 558–563.CrossRefGoogle Scholar
  9. 9.
    Leung, E. Event-based debugging for distributed internet applications. Master’s thesis, University of Waterloo, Waterloo, Ontario, Canada, April 1997.Google Scholar
  10. 10.
    Mattern, F. Efficient algorithms for distributed snapshots and global virtual time approximation. Journal of Parallel and Distributed Computing, 18 (1993), 423–434.CrossRefGoogle Scholar
  11. 11.
    Schwarz, R., and Mattern, F. Detecting causal relationships in distributed computations: in search of the holy grail. Distributed Computing, 7 (1994), 149–174.MATHCrossRefGoogle Scholar
  12. 12.
    Side, R. S., and Shoja, G. C. A debugger for distributed programs. Software — Practice and Experience 24, 5 (1994), 507–525.Google Scholar

Copyright information

© Springer-Verlag 1998

Authors and Affiliations

  • Ken Hines
    • 1
  • Gaetano Borriello
    • 1
  1. 1.Department of Computer Science & EngineeringUniversity of WashingtonSeattle

Personalised recommendations