Language Features for Process Interaction
Andrews, Gregory R.; McGraw, James R.
Language for parallel programming should meet four goals: expressiveness, reliability, security, and verifiability. This paper presents a set of language features for describing processes and process interaction, gives examples of their use, and briefly discusses their relation to the goals. Two constructs, resources and protected variables, are introduced as the mechanisms for describing interaction. Resources are extensions of the monitor concept of Hoare; protected variables are global variables which can only be accessed by one process at a time. Two types of access control are introduced: restrictions on scope rules for static access, and capabilities for dynamic access. Examples include the interface to machine devices, files and virtual devices, device scheduling, device reservation, and buffer allocation.
computer science; technical report
Previously Published As