A weakest precondition semantics for communicating processes
Theoretical Computer Science
A Generalized Message-Passing Mechanism for Communicating Sequential Processes
IEEE Transactions on Computers
Concepts and Notations for Concurrent Programming
ACM Computing Surveys (CSUR)
High level programming for distributed computing
Communications of the ACM
Communicating sequential processes
Communications of the ACM
Guarded commands, nondeterminacy and formal derivation of programs
Communications of the ACM
Hi-index | 0.01 |
Single-read-single-write (SRSW) variables are presented for synchronous and asynchronous communication between processes. The operational semantics of the instruction accessing these variables is quite simple: a SRSW variable can be written if it is free, and, once written, it becomes busy. A SRSW variable can be read when busy, and, once read, it becomes free. A process attempting to read a free SRSW variable or write a busy SRSW variable is put in a wait state until the state of the variable changes. The advantages of SRSW variables are multiple. The syntax of a regular sequential language can be used without any change, other than the introduction of a new SRSW data type. Parallel programs tend to be concise and easy to prove correct. The message passing paradigm can be very easily modeled with SRSW variables.