A Concurrent Semantics of Static Exceptions in a Parallel Programming Language
This paper aims at introducing a mechanism of exceptions in a parallel programming language, giving them a formal concurrent semantics in terms of preemptible and composable high-level Petri nets. We show that, combined with concurrency, exceptions can be used as a basis for other preemption related constructs. We illustrate this idea by presenting a generalized timeout and a simple UNIX-like system of concurrent preemptible threads.
KeywordsExceptions Petri nets semantics parallel programming
Unable to display preview. Download preview PDF.
- E. Best, R. Devillers, and J. G. Hall. The box calculus: a new causal algebra with multi-label communication. LNCS 609:21–69, 1992.Google Scholar
- E. Best, W. Fraczak, R. Hopkins, H. Klaudel, and E. Pelz. M-nets: An algebra of high-level Petri nets, with an application to the semantics of concurrent programming languages. Acta Informatica, 35, 1998.Google Scholar
- E. Best and R. P. Hopkins. B(PN)2-A basic Petri net programming notation. PARLE’93, LNCS 694:379–390, 1993.Google Scholar
- R. Devillers, H. Klaudel, and R.-C Riemann. General refinement for high-level Petri nets. FST&TCS’97, LNCS 1346:297–311, 1997.Google Scholar
- R. Devillers, H. Klaudel, and R.-C. Riemann. General parameterised refinement and recursion for the M-net calculus. Theoretical Computer Science, to appear (available at http://www.univ-paris12.fr/klaudel/tcs00.ps.gz).
- H. J. Genrich, K. Lautenbach, and P. S. Thiagarajan. Elements of General Net Theory. Net Theory and Applications, Proceedings of the Advanced Course on General Net Theory of Processes and Systems, LNCS 84:21–163, 1980.Google Scholar
- B. Grahlmann and E. Best. PEP-more than a Petri net tool. LNCS 1055, 1996.Google Scholar
- M. Kishinevsky, J. Cortadella, A. Kondratyev, L. Lavagno, A. Taubin and A. Yakovlev. Coupling asynchrony and interrupts: place chart nets and their synthesis. ICATPN’97, LNCS 1248:328–347, 1997.Google Scholar
- H. Klaudel. Compositional high-level Petri net semantics of a parallel programming language with procedures. Science of Computer Programming, to appear (available at http:// univ-paris12.fr/lacl/klaudel/proc.ps.gz).
- H. Klaudel and F. Pommereau. Asynchronous links in the PBC and M-nets. ASIAN’99, LNCS 1742:190–200, 1999.Google Scholar
- H. Klaudel and F. Pommereau. A concurrent and compositional Petri net semantics of preemption. IFM’2000, LNCS 1945:318–337, 2000.Google Scholar
- P. A. Lee and T. Anderson. Fault tolerance: principle and practice. Springer, 1990.Google Scholar
- B. Randell, A. Romanovsky, R. J. Stroud, J. Xu and A. F. Zorzo. Coordinated Atomic Actions: from concept to implementation. Submitted to IEEE TC Special issue.Google Scholar
- A. Romanovsky. Extending conventional languages by distributed/concurrent exception resolution. Journal of systems architecture, Elsevier science, 2000Google Scholar
- J. Xu, A. Romanovsky and B. Randell. Coordinated Exception Handling in Distributed Object-Oriented Systems: Improved Algorithm, Correctness and Implementation. Computing Dept., University of Newcastle upon Tyne, TR 596, 1997.Google Scholar