Abstract
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.

This publication has 2 references indexed in Scilit: