Process management and resource sharing in the multiaccess system in ESOPE
Communications of the ACM
The structure of the “THE”-multiprogramming system
Communications of the ACM
Solution of a problem in concurrent programming control
Communications of the ACM
TRAFFIC CONTROL IN A MULTIPLEXED COMPUTER
TRAFFIC CONTROL IN A MULTIPLEXED COMPUTER
The multics interprocess communication facility
SOSP '69 Proceedings of the second symposium on Operating systems principles
Describing and analyzing distributed software system designs
ACM Transactions on Programming Languages and Systems (TOPLAS)
The decline and fall of Operating Systems I
SIGCSE '87 Proceedings of the eighteenth SIGCSE technical symposium on Computer science education
Comments on implementation of P and V primitives with help of binary semaphores
ACM SIGOPS Operating Systems Review
ACM Transactions on Programming Languages and Systems (TOPLAS)
Further comments on implementation of general semaphores
ACM SIGOPS Operating Systems Review
Experiments in automated analysis of concurrent software systems
TAV3 Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification
A system for teaching concurrent programming
SIGCSE '91 Proceedings of the twenty-second SIGCSE technical symposium on Computer science education
ACM SIGOPS Operating Systems Review
EMERALDS: a small-memory real-time microkernel
Proceedings of the seventeenth ACM symposium on Operating systems principles
Semaphore primitives and starvation-free mutual exclusion
Journal of the ACM (JACM)
ACM Computing Surveys (CSUR)
A Survey of Some Theoretical Aspects of Multiprocessing
ACM Computing Surveys (CSUR)
Concurrent Programming Concepts
ACM Computing Surveys (CSUR)
Synthesis of Resource Invariants for Concurrent Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proving Liveness Properties of Concurrent Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Parallel programs: proofs, principles, and practice
Communications of the ACM
Synchronization with eventcounts and sequencers
Communications of the ACM
Formal verification of parallel programs
Communications of the ACM
Reduction: a method of proving properties of parallel programs
Communications of the ACM
EMERALDS: A Small-Memory Real-Time Microkernel
IEEE Transactions on Software Engineering
Almost control-free (indeterministic) parallel computation on permit schemes
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Actor induction and meta-evaluation
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Reduction: a new method of proving properties of systems of processes
POPL '75 Proceedings of the 2nd ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Principles of proving concurrent programs in Gypsy
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Synthesis of resource invariants for concurrent programs
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Capsules: A Shared Memory Access Mechanism for Concurrent C/C++
IEEE Transactions on Parallel and Distributed Systems
The invention of concurrent programming
The origin of concurrent programming
A proposal for certain process management and intercommunication primitives
ACM SIGOPS Operating Systems Review
The TYPESET-10 Message Exchange Facility: a case study in systemic design
ACM SIGOPS Operating Systems Review
The non-problem of nested monitor calls
ACM SIGOPS Operating Systems Review
Sentry: A novel hardware implementation of classic operating system mechanisms
ISCA '82 Proceedings of the 9th annual symposium on Computer Architecture
A shared resource algorithm for distributed simulation
ISCA '82 Proceedings of the 9th annual symposium on Computer Architecture
Architectural implications of abstract data type implementation
ISCA '79 Proceedings of the 6th annual symposium on Computer architecture
Limitations of synchronization primitives with conditional branching and global variables
STOC '74 Proceedings of the sixth annual ACM symposium on Theory of computing
A structure for interprocess communication in a data communications handler
ACM '76 Proceedings of the 1976 annual conference
Consistency and correctness of duplicate database systems
SOSP '77 Proceedings of the sixth ACM symposium on Operating systems principles
Towards the construction of verifiable software systems
Proceedings of the 1976 conference on Data : Abstraction, definition and structure
Interprocess communication in real-time systems
SOSP '73 Proceedings of the fourth ACM symposium on Operating system principles
Semantic aspects of concurrent processes
Proceeding of ACM SIGPLAN - SIGOPS interface meeting on Programming languages - operating systems
Constructing correct and efficient concurrent programs
Proceedings of the international conference on Reliable software
SYNVER: A system for the automatic synthesis and verification of synchronization processes
ACM '74 Proceedings of the 1974 annual conference - Volume 1
Reply to "on proof rules for monitors"
ACM SIGOPS Operating Systems Review
Reply to a paper by A. N. Habermann on the programming language Pascal
ACM SIGPLAN Notices
ACM SIGOPS Operating Systems Review
Resources, concurrency, and local reasoning
Theoretical Computer Science
The application of program-proving techniques to the verification of synchronization processes
AFIPS '72 (Fall, part I) Proceedings of the December 5-7, 1972, fall joint computer conference, part I
Coupling small computers for performance enhancement
AFIPS '76 Proceedings of the June 7-10, 1976, national computer conference and exposition
Interaction monitors in a distributed system
AFIPS '75 Proceedings of the May 19-22, 1975, national computer conference and exposition
An approach to software system modelling and analysis
Computer Languages
An approach to software system behavior description
Computer Languages
SESPOOL, a language for systems programming
Computer Languages
Hi-index | 48.28 |
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 of the synchronization mechanism 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.