Abstract
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.
Similar content being viewed by others
References
Stpiczyski, P.: Ada as a language for programming clusters of SMPs. Ann. UMCS Sectio AI Inform. 1(1), 1–7 (2015)
RAl-Asadi, E.A.: Finding N prime numbers using distrusted computing PVM (parallel virtual machine). Int. J. Eng. Technol. 5(11), 578–588 (2015)
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)
Schaich, D., DeGrand, T.: Parallel software for lattice N = 4 supersymmetric YangCMills theory. Comput. Phys. Commun. 190(1), 200–212 (2014)
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)
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)
Jiang, C.J.: The PN Machine Theory of Discrete Event Dynamic System. Science Press House, Beijing (2000)
Murata, T., Shenker, B., Shatz, S.M.: Detection of ada static deadlocks using petri net invariants. IEEE Trans. Softw. Eng. 55(3), 314–326 (1989)
Shatz, S.M., Mai, K., Black, C., Tu, S.: Design and implementation of a petri net-based tookit for ada tasking analysis. IEEE Trans. Parallel Distrib. Syst. 1(4), 424–441 (1990)
Jiang, C.J.: A method to detect the abnormal phenomenon in PVM program based on petri net. J. Syst. Sci. Syst. Eng. 8(2), 165–178 (1999)
Zhang, Z.Q., Jiang, C.J.: The verification system for PVM parallel program. Chin. J. Comput. 22(4), 409–414 (1999)
Ding, Z.J., Jiang, C.J.: Verification of concurrent programs by temporal petri nets. Chin. J. Comput. 25(5), 467–475 (2002)
Shatz, S.M., Sheng, R.T., Murata, T.: An application of petri net reduction for ada tasking deadlock analysis. IEEE Trans. Parallel Distrib. Syst. 7(12), 1307–1322 (1996)
Godefroid, P., Wolper, P.: Using partial orders for the efficient verification of deadlock freedom and safety properties. Form. Methods Syst. Des. 2(2), 149–164 (1993)
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)
Corbett, J.C.: Evaluating deadlock detection methods for concurrency software. IEEE Trans. Softw. Eng. 22(3), 161–180 (1996)
Valmari, A.: Compositional state space generation. In: International Conference on Applications and Theory of Petri Nets: Advances in Petri Nets, pp. 427–457 (1991)
Cheung, S.C., Kramer, J.: Enhancing compositional reachability analysis with context constraints. ACM Sigsoft Softw. Eng. Notes 18(5), 115–125 (1993)
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)
Notomi, M., Murata, T.: Hierarchical reachability graph of bounded petri nets for concurrent-software. IEEE Trans. Softw. Eng. 20(5), 325–336 (1994)
Liu, W., Du, Y.Y., Zhou, M.C., Yan, C.: Transformation of logical workflow nets. IEEE Trans. Syst. Man Cybern. Syst. 8(10), 1401–1412 (2014)
Tian, Y.H., Du, Y.Y.: A grouping algorithm of optimal alignments. J. Shandong Univ. Sci. Technol. 34(1), 29–34 (2015)
Bons, R.W.H., Lee, R.M., Wagenaar, R.W.: Designing trustworthy interorga-nizational trade procedures for open electronic commerce. Int. J. Electron. Commer. 2(3), 61–83 (1998)
Acknowledgments
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.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Liu, W., Wang, L., Du, Y. et al. Deadlock Property Analysis of Concurrent Programs Based on Petri Net Structure. Int J Parallel Prog 45, 879–898 (2017). https://doi.org/10.1007/s10766-016-0440-7
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10766-016-0440-7