evals for 5/11/2000

Aaras P VASA (avasa@cs.ucsd.edu)
Thu, 11 May 2000 10:08:04 -0700 (PDT)

MOnitors: An operating system structuring concept

this paper explains the concept of monitors , a method for structuring
operating systems to achieve synchronization

a monitor is a collection of local data and procedures for a particular
resource.the local data is accessed from within the monitor.
it is guaranteed that only one procedure can be inside the
monitor at a given time.they have a 'wait' and 'signal' opeartion defined
for proecedures. There is a condition variable for this purpose which is
represented by a queue of processes.the monitor always satisfies
an invariant which has to be true before and after any procedure

the paper shows the eqivalence of semaphores and monitors.
it also discusses certain applications where monitors are used.
it also discusses the issue for priority for waiting processes which
needs some more thought.this paper introduces the great concept
of monitors which can perform all the functions performed by semaphores
but might be easier to code in my opinion.it leaves
a lot of unanswered questions about monitors regarding processes
deadlocks,interrupts etc. which are of concern

Experiences with processes and monitors in Mesa
this paper tries to discuss the problems associated with monitors when
they are used in real systems.

it deals with the problems of WAIT,priority scheduling,deadlocks,
timeouts and exceptions and dealing with processes. it deals
with the Mesa language.
processes are created concurrently as procedure activations.
processes can create dangling refernces which are not protected
against in Mesa.
Mesa mointors are slightly differnent.
they have 3 kinds of procedure-entry,internal and external
they use notify instead of signals.
They use a Naked notify for I/O

this paper gives us a great view of modifications needed in order
to integrate monitors in Mesa and how to accomplish better
perforamnce. i think it is a great paper
but the performance costs are for Mesa which is single user . they
will increase in other systems as more protection is needed