ACM Home Page
Please provide us with feedback. Feedback
Distributed cooperation with action systems
Full text PdfPdf (3.43 MB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 10 ,  Issue 4  (October 1988) table of contents
Pages: 513 - 554  
Year of Publication: 1988
ISSN:0164-0925
Authors
R. J. R. Back  Abo Akademi, Finland
F. Kurki-Suonio  Tampere Univ. of Technology, Finland
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 34,   Citation Count: 43
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/48022.48023
What is a DOI?

ABSTRACT

Action systems provide a method to program distributed systems that emphasizes the overall behavior of the system. System behavior is described in terms of the possible interactions (actions) that the processes can engage in, rather than in terms of the sequential code that the processes execute. The actions provide a symmetric communication mechanism that permits an arbitrary number of processes to be synchronized by a common handshake. This is a generalization of the usual approach, employed in languages like CSP and Ada, in which communication is asymmetric and restricted to involve only two processes. Two different execution models are given for action systems: a sequential one and a concurrent one. The sequential model is easier to use for reasoning, and is essentially equivalent to the guarded iteration statement by Dijkstra. It is well suited for reasoning about system properties in temporal logic, but requires a stronger fairness notion than it is reasonable to assume a distributed implementation will support. The concurrent execution model reflects the true concurrency that is present in a distributed execution, and corresponds to the way in which the system is actually implemented. An efficient distributed implementation of action systems on a local area network is described. The fairness assumptions of the concurrent model can be guaranteed in this implementation. The relationship between the two execution models is studied in detail in the paper. For systems that will be called fairly serializable, the two models are shown to be equivalent. Proof methods are given for verifying this property of action systems. It is shown that for fairly serializable systems, properties that hold for any concurrent execution of the system can be established by temporal proofs that are conducted entirely within the simpler sequential execution model.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Ada Programming Language. ANSI/MIL-STD-1815A-1983.
2
3
 
4
BACK, R. J. R., HARTIKAINEN, E., AND KURKI-SUONIO, R. Multi-process handshaking on broadcasting networks. In Reports in Computer Science 42, Abo Akademi, Abo, Finland, 1985.
5
 
6
BACK, R. J. R., AND KURKI-SUONIO, R. A case study in constructing distributed algorithms: Distributed exchange sort. In Proceedings of Winter School on Theoretical Computer Science (Lammi, Finland, Jan. 1984). Finnish Society of Information Processing Science, 1-33.
 
7
BACK, R. J. R., AND KURKI-SUoNIO, R. Co-operation in distributed systems using symmetric multi-process handshaking. In Reports in Computer Science 34, Abo Akademi, Abo, Finland, 1984.
 
8
 
9
BAORODIA, R. On the design of high performance distributed systems. Ph.D. dissertation, Univ. of Texas, Austin, 1987.
10
11
12
 
13
CSMA/CD Access Method and Physical Layer Specifications. IEEE Standard 802.3, IEEE, New York, July 1983.
 
14
 
15
 
16
17
 
18
EKLUND, P. Synchronizing multiple processes in common handshakes. In Reports in Computer Science 39, Abo Akademi, Abo, Finland, 1985.
 
19
FORGY, C., AND DERMOT, M.C. OPS, a domain independent production system language. In Proceedings of Fifth International Joint Conference on Artificial Intelligence (Cambridge, Mass., Aug. 1977), Morgan Kaufmann, 1977, 933-939.
 
20
FORMAN, I.R. Raddle, an informal introduction. Tech. Rep. STP-182-85, Microelectronics and Computer Technology Corp., Austin, Tex., 1986.
 
21
22
23
24
25
 
26
 
27
INMOS LTD. Occam Programming Manual. Prentice-Hall, Englewood Cliffs, N.J., 1985.
 
28
 
29
KUIPER, R., AND DE ROEVER, W. P. Fairness assumptions for CSP in a temporal logic framework. In Formal Description of Programming Concepts--II, D. Bj~rner, Ed. North-Holland, Amsterdam, 1983, 159-167.
30
31
 
32
 
33
 
34
35
 
36
 
37

CITED BY  43


REVIEW

"Steven K. Andrianoff : Reviewer"

In this paper the authors develop a model for the design of a distributed system called an action system. This model describes the system in terms of process interactions (“actions”) rather than the sequential code of the cooperating  more...

Collaborative Colleagues:
R. J. R. Back: colleagues
F. Kurki-Suonio: colleagues