Monitors: an operating system structuring concept
Communications of the ACM
Implementing data abstractions and monitors in UCSD Pascal
ACM SIGPLAN Notices
Modula-2 and the monitor concept
ACM SIGPLAN Notices
Hi-index | 0.00 |
Hoare[1] introduced the monitor as a tool for structuring the design of concurrent systems such as operating systems. He roposed the use of "priority conditions" to facillitate certain types of scheduling. However in his proposal there are no provisions for allowing a "customer" of the monitor to inquire as to the status of a condition. Such inquiries as "What is the highest priority process waiting on condition X?" or "How many processes are waiting on condition X with highest priority?" are not supported in Hoare's design. This paper investigates the implementation of priority conditions for monitors under UCSD Pascal and proposes two such status queries which are both useful and efficient. It is shown that the implementation of Hoare's "alarmclock" monitor is made simpler and more efficient through the use of these queries.