O.S. Evaluations

Kyriakos Lakkas (klakkas@cs.ucsd.edu)
Tue, 25 Apr 2000 00:53:59 -0700

H. C. Lauer and R. M. Needham, "On the Duality of Operating System Structures," Proc. Second International Symposium on Operating Systems, IRIA, Oct. 1978 (reprinted in Operating Systems Review, Vol. 13, No. 2, April 1979, pp. 3-19).

This paper distinguishes Operating Systems in two major categories: message-oriented and procedure-oriented. After presenting the attributes of each one, the authors conclude that Operating Systems constructed using one model do not have an advantage over systems constructed using the other, since all functionality of the one model can be directly mapped to equivalent primitives of the other. So, the choice of which one to use is not based upon performance or the applications that the system is intended to support, but upon the ease of implementation, given a specific hardware design.

Since the arguments are made given empirical evidence and no system was actually implemented using either model, it is impossible to prove that the two models are in fact duals of each other and that performance would not be affected. It would be interesting to see if systems designed today prefer one model over another or a hybrid of the two.

D. D. Clark, "The Structuring of Systems using Upcalls," Proc. Tenth Symposium on Operating Systems Principles, Operating Systems Review, 19, 5, pp. 171-180, December 1985.

The second paper presents what seems to be an innovating (for that time being) approach of a layer structured system, such as an Operating System or a Network System; the use of upcalls, meaning calls of a lower layer to an upper layer in the hierarchy. The first part of the paper is trying to reason the need for this approach, while the rest of it presents ways to avoid the problems that arise by upcalls. Finally, the authors briefly present the Task Scheduling and the Address Space Management of their O.S., the Swift.

Reading it, one is convinced for the need of upcalls, especially in Network Systems (which is the example used throughout the paper). The only problem that I see is that the O.S. is greatly depended on the programmer's good job. If the programmer is unaware of the special needs of the system, serious failures may occur.

Finally, one comment irrelevant to the subject of the paper: Last time I saw so many weird words together was when I was taking the verbal GRE test; heresy, contort, akin, perilous and circumvent are just a few of those...