arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv cs/0610137cs.LOcs.DC
收藏

一个具有原子事务的并发演算

A Concurrent Calculus with Atomic Transactions

Lucia Acciai, Michele Boreale, Silvano Dal Zilio

摘要:

软件事务存储器(STM)模型是一种用于控制对资源的并发访问的原始方法,而不需要显式的基于锁的同步机制。STM的一个关键特性是提供了一种方法来将原子块内的读写操作序列分组,类似于数据库事务,其整个效果应该原子地发生。在本文中,我们调查STM从进程代数的角度来看,定义了一个扩展的异步CCS与原子块的行动。我们的目标是不仅要设置一个正式的推理STM实现的基础,但也要了解这个模型与其他并发控制机制。我们还将此演算视为使用原子事务扩展流程演算的测试平台。这是一个有趣的研究方向,因为在大多数情况下,将事务与进程演算混合在一起的实际工作考虑补偿事务,这是一个缺乏所有众所周知的ACID属性的模型。我们发现,除了原子事务的结果在一个非常富有表现力的演算,足以轻松地编码其他并发原语,如守护选择和多集同步(à la join演算)。我们的编码的正确性证明使用一个合适的概念互模拟等价。然后应用等价性来证明有趣的“交易定律”,并获得交易的简单范式。

英文摘要:

The Software Transactional Memory (STM) model is an original approach for controlling concurrent accesses to ressources 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. Our goal is not only to set a formal ground for reasoning on STM implementations but also to understand how this model fits with other concurrency control mechanisms. We also view this calculus as a test bed for extending process calculi with atomic transactions. This is an interesting direction for investigation since, for the most part, actual works that mix transactions with process calculi consider compensating transactions, a model that lacks all the well-known ACID properties. 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.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑