A Petri Net Based Analysis of Deadlocks for Active Objects and Futures
We give two different notions of deadlock for systems based on active objects and futures. One is based on blocked objects and conforms with the classical definition of deadlock by Coffman, Jr. et al. The other one is an extended notion of deadlock based on blocked processes which is more general than the classical one. We introduce a technique to prove deadlock freedom of systems of active objects. To check deadlock freedom an abstract version of the program is translated into Petri nets. Extended deadlocks, and then also classical deadlock, can be detected via checking reachability of a distinct marking. Absence of deadlocks in the Petri net constitutes deadlock freedom of the concrete system.
Unable to display preview. Download preview PDF.
- 1.Abadi, M., Cardelli, L.: A Theory of Objects. Monographs in Computer Science. Springer (1996)Google Scholar
- 6.de Boer, F.S., Bravetti, M., Grabe, I., Lee, M., Steffen, M., Zavattaro, G.: A petri net based analysis of deadlocks for active objects and futures, extended version (2012), http://cs.famaf.unc.edu.ar/~lee/publications/facs12_complete.pdf
- 7.Dijkstra, E.W.: Cooperating sequential processes. In: Genuys, F. (ed.) Programming Languages: NATO Advanced Study Institute, pp. 43–112. Academic Press (1968)Google Scholar
- 10.Giachino, E., Laneve, C., Lascu, T.: Deadlock and livelock analysis in concurrent objects with futures. Technical report, University of Bologna (December 2011), http://www.cs.unibo.it/~laneve/publications.html
- 11.Gordon, A.D., Hankin, P.D.: A concurrent object calculus: Reduction and typing. In: Nestmann, U., Pierce, B.C. (eds.) Proceedings of HLCL 1998. Electronic Notes in Theoretical Computer Science, vol. 16.3, Elsevier Science Publishers (1998)Google Scholar
- 12.Smith, S.F., Agha, G.A., Mason, I.A., Talcott, C.L.: A foundation for actor computation. Journal of Functional Programming (1997)Google Scholar
- 15.Johnsen, E.B., Owe, O.: An Asynchronous Communication Model for Distributed Concurrent Objects. Software and Systems Modeling (2007)Google Scholar