Skip to main content

Analyzing Ada tasking deadlocks and livelocks using extended Petri nets

  • Part III: Concurrency And Parallelism In Ada
  • Conference paper
  • First Online:
Ada: The Choice for '92 (Ada-Europe 1991)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 499))

Included in the following conference series:

Abstract

This paper presents a static analysis method based on extended Petri nets to detect tasking deadlocks and livelocks in a class of concurrent Ada programs. We model the tasking behavior of concurrent Ada programs using extended Petri nets and analyze the Petri net model of an Ada program using an algebraic method. We show that detection of a tasking deadlock or livelock in a concurrent Ada program can be reduced to getting a positive integer solution for a matrix equation concerning the Petri net model of the program. The method is effective for those concurrent Ada programs that include no dynamic creation of tasks, no abort statement, and no exception handler.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. Cheng and K. Ushijima: Modeling the Ada Tasking Using Extended Petri Nets, Memoirs of the Faculty of Engineering, Kyushu University, Vol. 48, No. 1, pp. 17–30, 1988.

    Google Scholar 

  2. J. Cheng and K. Ushijima: Analyzing Deadlocks and Livelocks in Concurrent Ada Programs Using Extended Petri Nets, Memoirs of the Faculty of Engineering, Kyushu University, Vol. 48, No. 2, pp. 153–165, 1988.

    Google Scholar 

  3. J. Cheng: A Classification of Tasking Deadlocks, ACM Ada Letters, Vol. 10, No. 5, pp. 110–127, 1990.

    Article  Google Scholar 

  4. J. Cheng: Task-Wait-For Graphs and Their Application to Handling Tasking Deadlocks, Proc. of the ACM Third Annual TRI-Ada Conference, pp. 376–390, Baltimore, USA, December 1990.

    Google Scholar 

  5. J. Cheng: A Survey of Tasking Deadlock Detection Methods, ACM Ada Letters, Vol. 11, No. 1, pp. 82–91, 1991.

    Article  Google Scholar 

  6. United States Department of Defense: Reference Manual for the Ada Programming Language (ANSI/MIL-STD-1815A), 1983.

    Google Scholar 

  7. D. Mandrioli, R. Zicari, C. Ghezzi, and F. Tisato: Modeling the Ada Task System by Petri Nets, Computer Languages, Vol. 10, No. 1, pp. 43–61, 1985.

    Article  Google Scholar 

  8. T. Murata: Petri Nets: Properties, Analysis, and Applications, Proceedings of the IEEE, Vol. 77, No. 4, pp. 541–580, 1989.

    Article  Google Scholar 

  9. T. Murata, B. Shenker, and S. M. Shatz: Detection of Ada Static Deadlocks Using Petri Net Invariants, IEEE Transactions on Software Engineering, Vol. 15, No. 3, pp. 314–326, 1989.

    Article  Google Scholar 

  10. J. L. Peterson: Petri Nets Theory and the Modeling of Systems, Prentice-Hall, 1981.

    Google Scholar 

  11. S. M. Shatz, K. Mai, C. Black, and S. Tu: Design and Implementation of a Petri Net-Based Toolkit for Ada Tasking Analysis, IEEE Transactions on Parallel and Distributed Systems, Vol. 1, No. 4, pp. 424–441, 1990.

    Article  Google Scholar 

  12. R. Stansifer and D. Marinescu: Petri Net Models of Concurrent Ada Programs, Microelectronics and Reliability, to appear, 1991.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dimitris Christodoulakis

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cheng, J., Ushijima, K. (1991). Analyzing Ada tasking deadlocks and livelocks using extended Petri nets. In: Christodoulakis, D. (eds) Ada: The Choice for '92. Ada-Europe 1991. Lecture Notes in Computer Science, vol 499. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0018493

Download citation

  • DOI: https://doi.org/10.1007/BFb0018493

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-54092-2

  • Online ISBN: 978-3-540-47396-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics