Abstract
The Software Transactional Memory (STM) model is an original approach for controlling concurrent accesses to resources without the need for explicit lock-based synchronization mechanisms. A key feature of STM is to provide a way to group sequences of read and write actions inside atomic blocks, similar to database transactions, whose whole effect should occur atomically. In this paper, we investigate STM from a process algebra perspective and define an extension of asynchronous CCS with atomic blocks of actions. We show that the addition of atomic transactions results in a very expressive calculus, enough to easily encode other concurrent primitives such as guarded choice and multiset-synchronization (à la join-calculus). The correctness of our encodings is proved using a suitable notion of bisimulation equivalence. The equivalence is then applied to prove interesting "laws of transactions" and to obtain a simple normal form for transactions. © Springer-Verlag Berlin Heidelberg 2007.
Cite
CITATION STYLE
Acciai, L., Boreale, M., & Dal Zilio, S. (2007). A concurrent calculus with atomic transactions. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4421 LNCS, pp. 48–63). Springer Verlag. https://doi.org/10.1007/978-3-540-71316-6_5
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.