Processes, Tasks, and Monitors: A Comparative Study of Concurrent Programming Primitives

Peter W. Wegner, Scott A. Smolka · IEEE Transactions on Software Engineering · 1983

Three notations for concurrent programming are compared, namely CSP, Ada, and monitors. CSP is an experimental language for exploring structuring concepts in concurrent programming. Ada is a general-purpose language with concurrent programming facilities. Monitors are a construct for managing access by concurrent processes to shared resources. We start by comparing "lower-level" communication, synchronization, and nondeterminism in CSP and Ada and then examine "higher-level" module interface properties of Ada tasks and monitors.

Read the paper · More papers on PaperTik