Abstract
This paper introduces a language concept, guarding processes, as a method of structuring concurrent programs in distributed computing systems without a common memory. In the concept a program consists of modules each of which defines objects and servers with multi-processes The concept is based on two types of path expression. One type is used to achieve synchronization, mutual exclusion, and autonomous resource access in the module. The other type is used to specify interactions and to detect impermissible sequences of communication between modules. The paper gives some examples of this new concept and demonstrates its potential.
Preview
Unable to display preview. Download preview PDF.
References
Andler, S. (1979). Predicate Path Expression: A High-Level Synchronization Mechanism. CMU-CS-79-134, Depart. of Comput. Science Carnegie-Mellon Univ.
Brinch Hansen, P. (1978). Distributed Processes: A Concurrent Programming Concept. Comm. ACM, Vol 21, No. 11, pp 934–941.
Campbell, R.H. and Habermann, A.N. (1974). The specification of Process Synchronization by Path Expressions. LNCS, Vol 16, pp 89–102.
Feldman, J.A. (1979). High Level Programming for Distributed Computing. Comm. ACM, Vol 22, No 6, pp 353–368.
Hoare C.A.R. (1978). Communicating Sequential Processes. Comm. ACM, Vol 21, No 8, pp 666–677.
Ichbiah J.D. et al. (1979). Preliminary ADA Reference Manual. ACM SIGPLAN Notices, Vol 14, No 6, Part A.
Jensen, E.D. (1978). The Honeywell Experimental Distributed Processor — An overview. IEEE Computer, Vol 11, No 1, pp 28–39.
Kane J.R., and Yau S.S. (1975). Concurrent Software Fault Detection. Trans. on Software Engineering, Vol SE-1, No 1, pp 87–99.
Kawai, H. (1981). High-Level Protocols in Heterogeneous Computer Networks. Res. of ETL, No 817, Electrotechnical Lab.
Kim K.H. (1979). Error Detection, Reconfiguration and Recovery in Distributed Processing Systems. Proc. IEEE Distributed Computing Systems, Huntsville, pp 271–295.
Lauer, P.E. and Campbell, R.H. (1975). Formal Semantics for a Class of High-Level Primitives for Coordinating Concurrent Processes. Acta Informatica, Vol 5, pp 297–332.
Liskov, V. (1979). Primitives for Distributed Computing. Proc. 7th Symp. on OS Principles, pp 33–42.
Liskov, V. (1981). Reports on the Workshop on Fundamental Issues in Distributed Computing. ACM SIGOPS, Vol 15, No 3, pp 9–38.
Mao T.W., and Yeh R.T. (1980). Communication Port: A Language Concept for Concurrent Programming. IEEE Trans. on Software Engineering, Vol SE-6, No 2, pp 194–204.
Matelan, M.N. (1976) A Model for Real Time Control System Production. ACM SIGDA, Vol 6, No 2, pp 14–61.
Nagata T. et al. (1979). An Outline of Poly Prosessor System for Control (PPSC). Bull. of ETL, Vol 43, No 4, pp 208–212.
Tsukamoto M. (1981). Language Structures and Management Method in a Distributed Real-Time Environment. Proc. 3rd IFAC Workshop on DCCS, Beijing.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1982 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tsukamoto, M. (1982). Structuring distributed programs with control fault detection. In: Maekawa, M., Belady, L.A. (eds) Operating Systems Engineering. IBM 1980. Lecture Notes in Computer Science, vol 143. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-11604-4_57
Download citation
DOI: https://doi.org/10.1007/3-540-11604-4_57
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-11604-2
Online ISBN: 978-3-540-39424-2
eBook Packages: Springer Book Archive