Communication is an essential element of modern software, yet programming and analysing communicating systems are difficult tasks. A reason for this difficulty is the lack of compositional mechanisms that preserve relevant communication properties. This problem has been recently addressed for the well-known model of communicating systems, that is sets of components consisting of finite-state machines capable of exchanging messages. The main idea of this approach is to take two systems, select a participant from each of them, and derive from those participants a pair of coupled gateways connecting the two systems. More precisely, a message directed to one of the gateways is forwarded to the gateway in the other system, which sends it to the other system. It has been shown that, under some suitable compatibility conditions between gateways, this composition mechanism preserves deadlock freedom for asynchronous as well as symmetric synchronous communications (where sender and receiver play the same part in determining which message to exchange). This paper considers the case of asymmetric synchronous communications where senders decide independently which message should be exchanged. We show here that preservation of lock freedom requires sequentiality of gateways, while this is not needed for preservation of either deadlock freedom or strong lock freedom.
翻译:通信是现代软件的一个基本要素,然而,编程和分析通信系统是困难的任务。这一困难的原因是缺乏保护相关通信特性的构成机制。这个问题最近为众所周知的通信系统模式所解决,即由能够交换信息的有限国家机器组成的各组组件。这种方法的主要想法是采用两个系统,从每个系统中挑选一名参与者,并从这两个系统中取出一对连接两个系统的连接网关的连接网关。更确切地说,对一个网关的信息被传送到另一个系统中的网关上,而另一个系统将它发送到另一个系统。已经表明,在网关之间一些合适的兼容条件下,这种构件机制保持僵局的自由,既保持不同步,又保持对称同步通信(发送者和接收者在决定要交换的信息时也发挥同样的作用)。本文审议了不对称同步通信的情况,发送者独立决定应当交换哪个信息。我们在这里表明,维持锁网关的自由需要按顺序进行,而这是为维持僵局的自由或牢固的锁锁自由所不需要的。