synchronization of communicating processes
This paper appears in the March, 1972, issue of the Communications of the ACM. Its abstract is reproduced below. Formalization of a well-defined synchronization mechanism can be used to prove that concurrently running processes of a system communicate correctly. This is demonstrated for a system consisting of many sending processes which deposit messages in a buffer and many receiving processes which remove messages from that buffer. The formal description makes it very easy to prove that the buffer will neither overflow nor underflow, that senders and receivers will never operate on the same message frame in the buffer nor will they run into a deadlock.
synchronization communication process formalism systems message buffers deadlock program correctness process communication parallel programming process scheduling multiprogramming