Report B 00-09
Certain asymmetries in the solutions of several classical concurrency problems can be remedied by adding redundant code that does not affect the efficiency of the algorithms. On this way a common pattern emerges which allows for the development of an abstraction of different applications in form of a single class that completely encapsulates the essence of the orresponding synchronization paradigm.
We specify and implement two such universal synchronization objects (a general monitor and a general semaphor technique of passing the baton) and show their universality by applying these concepts to other classical examples.
There is strong evidence that central aspects of other synchronization mechanisms such as message passing could be condensed in similar objects; in case this conjecture turns out to be true, the client server paradigm will be examined in a subsequent paper.
Get the report here or by anonymous ftp: Server: fubinf.inf.fu-berlin.de File: pub/reports/tr-b-00-09.ps.gz