A weakest precondition semantics for communicating processes
Theoretical Computer Science
Data-Driven and Demand-Driven Computer Architecture
ACM Computing Surveys (CSUR)
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
Mathematical Theory of Program Correctness
Mathematical Theory of Program Correctness
Introduction to VLSI Systems
ACM SIGMICRO Newsletter
Distributed Computing with Single Read-Single Write Variables
IEEE Transactions on Software Engineering
MICRO 20 Proceedings of the 20th annual workshop on Microprogramming
Correction to "A Generalized Message-Passing Mechanism for Communicating Sequential Processes"
IEEE Transactions on Computers
A systematic approach to embedded biomedical decision making
Computer Methods and Programs in Biomedicine
Hi-index | 14.98 |
Bidirectional message-passing (bi-io), a novel symmetric communication mechanism for concurrent processes, is introduced and developed. The mechanism is symmetric in the sense that, in one atomic action, a message is transmitted in each direction between two processes. For some applications (tree structure, systolic arrays) this method is shown to have several advantages over conventional synchronization and communication primitives (mainly conciseness of programs, absence of certain types of deadlock). The mechanism is rigorously defined with a CSP-like syntax and a weakest-precondition semantics. Two systolic arrays are developed using bidirectional message-passing: a matrix-vector multiplier and a palindrome recognizer.