qin Zhanhai (qinzhan_hai@hotmail.com)
Thu, 11 May 2000 14:28:00 GMT

Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
Monitors: An Operating System Structuring Concept
This paper introduces "monitor" as an appropriate structure
for a module of an operating system. It schedules resources
for parallel user processes. It is very similar to the structure
of a data representation used by a sequential program. Each
monitor consists of a certain amount of local administrative
data, together with some procedures and functions which are
called by programs wishing to acquire or release resources.
It is shown that monitor concepts is as powerful as semaphores,
and that they can be used for all the same purposes. And
vice versa. The paper explains the implementation of monitor
concepts by showing a couple of examples and ends with a
brief conclusion. They distinguished their work because
they implemented the "monitor" with the similar structure
to other ordinary data representation. They designed a lot
of security mechanisms transparent to users. So it's helpful
for programming integrity.

I deem that the paper is really good in the sense that it
explains the idea very clearly by those examples and enumerates
some unconcerned questions at the end of the paper.

Experience with Processes and Monitors in Mesa
This work they did was to integrate some additional facilities for
concurrent programming and global resource sharing into the traditional
Mesa language. This makes them easier to use and also allows the
compiler to detect many kinds of errors in their use. They addressed
a number of issues which were not clearly resolved and tried to solve
them in the paper: Program structure, Creating processes, Creating
monitors, WAIT in nested monitor call, Exception handling, Scheduling,
and Input-output. After introducing the ideas, they showed use how
they implemented the facilities and some examples using these facilities.

The paper was well written and easy to understand. Integrating
those facilities into a programming language was a good idea.
It also helpful for programming integrity.