среда, 11 ноября 2009 г.

Monitor classification

Monitor classification - 40-pages document.
Show 5 and more different types of monitors.
First 5-10 pages has many historic information.

Abstract
One of the most natural, elegant, and efficient mechanisms for synchronization and communication, especially for systems with sharedmemory, is the monitor. Over the past twenty years many kinds of monitors have been proposed and implemented, and many modern programming languages provide some form of monitor for concurrency control. This paper presents a taxonomy of monitors that encompasses all the extant monitors and suggests others not found in the literature or in existing programming languages. It discusses the semantics and performance of the various kinds of monitors suggested by the taxonomy, and it discusses programming techniques suitable to each.

"Monitors were first proposed by Brinch Hansen [1973] and later described and extended by C.A.R. Hoare [1974]."

"+ Concurrent Pascal [Brinch Hansen 1975],
+ Mesa [Mitchell et al. 1979],
+ Modula [Wirth 1985],
+ Turing [Holt and Cordy 1988],
+ Modula-3 [Cardelli et al. 1988],
+ NeWS [Gosling et al. 1989],
+ Emerald [Raj et al. 1991]
+ mC++ [Buhr et al. 1992]
provide monitors as explicit language constructs."

"standard axiomatic semantics of sequential programs. For a general introduction to axiomatic semantics we recommend [Gries 1981].) (GRIES, D. 1981. The Science of Computer Programming. Springer-Verlag, 175 Fifth Ave., New York, New York 10010.)"

"All monitors are equivalent in the weak sense that any monitor program written for one kind of monitor can be implemented using any other kind of monitor. One way to demonstrate this weak equivalence is to note that any kind of monitor can be implemented with semaphores and can in turn be used to implement semaphores."

"The practical effect of scheduler refinement is that a correct program written with a particular scheduling discipline in mind is also correct if the scheduling discipline is changed to any refinement of the original scheduler."

"... seems to define the fundamental characteristic of a monitor. It identifies a total of 10 useful kinds of monitors: 8 explicit-signal and 2 implicit-signal monitors based on categorizations of priority and blocking ..."

Комментариев нет:

Отправить комментарий