Deadlock Property Analysis of Concurrent Programs Based on Petri Net Structure
- 215 Downloads
Deadlocks of concurrent programs are abnormal and need to be avoided. The deadlock property is analyzed in the paper. To reduce the analysis complexity, the decomposition method is presented. The Petri net model of concurrent programs is decomposed into multiple process nets based on the number of processes and message places in a concurrent program. The relation between process nets and the Petri net model of a concurrent program is studied. By analysis of deadlocks of process nets, deadlocks of concurrent programs are concluded. For an important subclass, deadlock property of concurrent programs is determined based on the deadlock property and the static structure of process nets. The decision condition of deadlocks is proposed. The concepts and techniques given in this paper are shown with some examples.
KeywordsParallel programs Deadlock Process nets Message places
This work is supported by the National Natural Science Foundation of China under grant 61472228, 61170078; the Natural Science Foundation of Shandong province under grant ZR2014FM009, ZR2015FM013; the doctoral program of higher education of the specialized research fund of China under Grant 20113718110004; the Project of Shandong Province Higher Educational Science and Technology Program under Grant number J12LN11; the China’s Post-doctoral Science Fund under grant 2012M521362; the Project of Shandong Post-doctoral Fund under grant 201303071;the international cooperation training Project of Shandong Province Higher Educational outstanding youth backbone teachers; and Basic Research Program of Qingdao City of China under Grant No.13-1-4-116-jch.
- 1.Stpiczyski, P.: Ada as a language for programming clusters of SMPs. Ann. UMCS Sectio AI Inform. 1(1), 1–7 (2015)Google Scholar
- 2.RAl-Asadi, E.A.: Finding N prime numbers using distrusted computing PVM (parallel virtual machine). Int. J. Eng. Technol. 5(11), 578–588 (2015)Google Scholar
- 3.Finlayson, I., Mueller, J., Rajapakse, S., Easterling, D.: Introducing tetra: an educational parallel programming system. In: Parallel and Distributed Processing Symposium Workshop (IPDPSW), 2015 IEEE International, Hyderabad, pp. 746–751 (2015)Google Scholar
- 5.Carter, J., Gardner, W. B.: A formal CSP framework for message passing HPC programming. In: Canadian Conference on Electrical and Computer Engineering, Ottawa, pp. 1466–1470 (2006)Google Scholar
- 6.Gardnera, W.B., Carter, J.D.: Using the pilot library to teach message-passing programming. In: Workshop on Education for High Performance Computing, New Orleans, LA, pp. 1–8 (2014)Google Scholar
- 7.Jiang, C.J.: The PN Machine Theory of Discrete Event Dynamic System. Science Press House, Beijing (2000)Google Scholar
- 11.Zhang, Z.Q., Jiang, C.J.: The verification system for PVM parallel program. Chin. J. Comput. 22(4), 409–414 (1999)Google Scholar
- 15.Duri, S., Buy, U., Devwapalli, R., Shatz, S.M.: Using state space reduction methods for deadlock analysis in ada tasking. ACM 18(18), 51–60 (1993)Google Scholar
- 17.Valmari, A.: Compositional state space generation. In: International Conference on Applications and Theory of Petri Nets: Advances in Petri Nets, pp. 427–457 (1991)Google Scholar
- 19.Yeh, W.J., Young, M.: Compositional reachability analysis using process algebra. In: Proceedings of the Symposium on Testing, Analysis, and Verification. ACM, pp. 49–59 (1999)Google Scholar
- 22.Tian, Y.H., Du, Y.Y.: A grouping algorithm of optimal alignments. J. Shandong Univ. Sci. Technol. 34(1), 29–34 (2015)Google Scholar