WoTUG - The place for concurrent processes

Paper Details


%T Mutually Assured Destruction (or the Joy of Sync)
%A Peter H. Welch, Jan Bækgaard Pedersen, Frederick R. M. Barnes
%E Peter H. Welch, Frederick R. M. Barnes, Jan F. Broenink, Kevin Chalmers, Jan Bækgaard Pedersen, Adam T. Sampson
%B Communicating Process Architectures 2013
%X In contrast to the Client\-Server pattern, Mutually Assured
   Destruction (MAD) allows the safe opening of communication
   by either of two processes with the other. Should both
   processes commit to opening conversation together, both are
   immediately aware of this and can take appropriate action \-
   there is no deadlock, even though the communications are
   synchronous. A common need for this pattern is
   in real\-time control systems (e.g. robotics), artificial
   intelligence, e\-commerce, model checking and elsewhere. A
   typical scenario is when two processes are given a problem
   to solve; we are satisfied with a solution to either one of
   them; whichever process solves its problem first kills the
   other and makes a report; the one that is killed
   also reports that fact. In this case, the opening
   communication between the two processes is the only
   communication (a kill signal). If both solve their problem
   around the same time and try to kill each other, MAD is the
   desired outcome (along with making their reports). A simple
   and safe solution (verified with FDR) for this pattern
   with occam synchronous communications is presented. This is
   compared with solutions via asynchronous communications.
   Although these avoid the potential deadlock that a naive
   strategy with synchronous communications would present, they
   leave a mess that has to be tidied up and this tidying adds
   complexity and run\-time cost. The Joy of Sync arises from
   the extra semantic information provided by synchronous
   communications \- that if a message has been sent,
   the receiving process has taken it. With this knowledge
   comes power and with that power comes the ability to
   implement higher level synchronisation patterns (such as MAD
   and Non\-blocking Syncs) in ways that are simple, verifyably
   safe and impose very low overheads.


If you have any comments on this database, including inaccuracies, requests to remove or add information, or suggestions for improvement, the WoTUG web team are happy to hear of them. We will do our best to resolve problems to everyone's satisfaction.

Copyright for the papers presented in this database normally resides with the authors; please contact them directly for more information. Addresses are normally presented in the full paper.

Pages © WoTUG, or the indicated author. All Rights Reserved.
Comments on these web pages should be addressed to: www at wotug.org

Valid HTML 4.01!