Problem oriented programming languages
Problem oriented programming languages
CLU reference manual
Operating system concepts (2nd ed.)
Operating system concepts (2nd ed.)
Operating systems: structures and mechanisms
Operating systems: structures and mechanisms
Synchronization of parallel programs
Synchronization of parallel programs
Data abstraction in programming languages
Data abstraction in programming languages
Real-time Euclid: a language for reliable real-time systems
IEEE Transactions on Software Engineering - Special issue on reliability and safety in real-time process control
Programming language concepts (2nd ed.)
Programming language concepts (2nd ed.)
About the semantic nested monitor calls
ACM SIGPLAN Notices
Fundamentals of programming languages (2nd ed.)
Fundamentals of programming languages (2nd ed.)
Object structure in the Emerald system
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Parallel programming
Concurrent programming for software engineers
Concurrent programming for software engineers
Device management in TURNING PLUS
ACM SIGOPS Operating Systems Review
Pascal-FC: a language for teaching concurrent programming
ACM SIGPLAN Notices
Operating systems: concepts, policies, and mechanisms
Operating systems: concepts, policies, and mechanisms
Concurrent program structures
Principles of operating systems
Principles of operating systems
Concurrent programming
Concepts of programming languages
Concepts of programming languages
Comparative programming languages
Comparative programming languages
Software—Practice & Experience
A multiprocessor implementation of Joyce
Software—Practice & Experience
Programming languages: a grand tour
Programming languages: a grand tour
Real time languages: design and development
Real time languages: design and development
Programming languages for distributed computing systems
ACM Computing Surveys (CSUR)
Parallel processing: principles and practice
Parallel processing: principles and practice
Principles of concurrent and distributed programming
Principles of concurrent and distributed programming
An introduction to operating systems (2nd ed.)
An introduction to operating systems (2nd ed.)
Synchronization and control of distributed systems and programs
Synchronization and control of distributed systems and programs
Concurrent programming: principles and practice
Concurrent programming: principles and practice
Centralized and distributed operating systems
Centralized and distributed operating systems
Modern operating systems
Programming models for parallel systems
Programming models for parallel systems
Concurrent Programming Concepts
ACM Computing Surveys (CSUR)
Concepts and Notations for Concurrent Programming
ACM Computing Surveys (CSUR)
The structure of “THE”-multiprogramming system
Communications of the ACM - Special 25th Anniversary Issue
Experience with processes and monitors in Mesa
Communications of the ACM
Distributed processes: a concurrent programming concept
Communications of the ACM
An alternative to event queues for synchronization in monitors
Communications of the ACM
Communications of the ACM
Monitors: an operating system structuring concept
Communications of the ACM
Communications of the ACM
Communications of the ACM
Concurrent control with “readers” and “writers”
Communications of the ACM
Principles of Programming Languages
Principles of Programming Languages
Programming Methodology: A Collection of Articles by Members of IFIP WG 2.3
Programming Methodology: A Collection of Articles by Members of IFIP WG 2.3
The architecture of concurrent programs
The architecture of concurrent programs
Operating system principles
Structured System Programming
On the Construction of Programs
On the Construction of Programs
Portable Programs for Parallel Processors
Portable Programs for Parallel Processors
Programming as an evolutionary process
Language Hierarchies and Interfaces, International Summer School
The non-problem of nested monitor calls
ACM SIGOPS Operating Systems Review
The problem of nested monitor calls revisited
ACM SIGOPS Operating Systems Review
Writing device drivers in Concurrent Pascal
ACM SIGOPS Operating Systems Review
Short-term scheduling in multiprogramming systems
SOSP '71 Proceedings of the third ACM symposium on Operating systems principles
ICSE '76 Proceedings of the 2nd international conference on Software engineering
Programming languages for operating systems.
Proceeding of ACM SIGPLAN - SIGOPS interface meeting on Programming languages - operating systems
Proceedings of an ACM conference on Language design for reliable software
The purpose of concurrent Pascal
Proceedings of the international conference on Reliable software
The problem of nested monitor calls
ACM SIGOPS Operating Systems Review
ACM SIGOPS Operating Systems Review
On the duality of operating system structures
ACM SIGOPS Operating Systems Review
A concurrent pascal compiler for minicomputers.
A concurrent pascal compiler for minicomputers.
Specification, verification, and implementation of concurrent programs.
Specification, verification, and implementation of concurrent programs.
Distributed processes: experience and architectures
Distributed processes: experience and architectures
Applications of abstract data types: the trio operating system
Applications of abstract data types: the trio operating system
A short introduction to Concurrent Euclid
ACM SIGPLAN Notices
A comparative survey of concurrent programming languages
ACM SIGPLAN Notices
Processor management in a concurrent Pascal kernel
ACM SIGOPS Operating Systems Review
Operating systems
Structured programming
An efficient meta-lock for implementing ubiquitous synchronization
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A realization of a concurrent object-oriented programming
SAC '98 Proceedings of the 1998 ACM symposium on Applied Computing
Starving philosophers: experimentation with monitor synchronization
Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education
The invention of concurrent programming
The origin of concurrent programming
Efficient parallel programming in Poly/ML and Isabelle/ML
Proceedings of the 5th ACM SIGPLAN workshop on Declarative aspects of multicore programming
Concurrency among strangers: programming in E as plan coordination
TGC'05 Proceedings of the 1st international conference on Trustworthy global computing
A survey of support for structured communication in concurrency control models
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
This is a personal history of the early development of the monitor concept and its implementation in the programming language Concurrent Pascal. The paper explains how monitors evolved from the ideas of Dahl, Dijkstra, Hoare, and the author (1971-73). At Caltech the author and his students developed and implemented Concurrent Pascal and used it to write several model operating systems (1974-75). A portable implementation of Concurrent Pascal was widely distributed and used for system design (1976-90). The monitor paradigm was also disseminated in survey papers and text books. The author ends the story by expressing his own mixed feelings about monitors and Concurrent Pascal.