on the duality of operating system structures 1. hugh c. lauer xerox corporation palo alto,...

25
On the Duality of Operating System Structures 1

Upload: alvin-brooks

Post on 12-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

1

On the Duality of Operating System Structures

Page 2: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

2

Hugh C. Lauer

Xerox CorporationPalo Alto, California

Roger M. Needham

Cambridge UniversityCambridge, England

Proc. Second International Symposium on Operating Systems, IRIA, Oct. 1978

Page 3: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

3

Overview Nature of the Paper Two Models

Message-Oriented Systems Procedure-Oriented Systems

Characteristics of the Models Empirical Support Underlying Similarities Underlying Differences Conclusions

Outline

Page 4: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

4

“Many operating system designs can be placed into one of two very rough categories, depending upon how they implement and use the notions of process and synchronization.”

Overview

Page 5: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

5

The paper is empirical in nature The universe in the investigation is the

class of operating systems The properties of interest are processes,

synchronization and inter-process communication

Nature of the Paper

Page 6: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

6

Two Models

Message-Oriented Systems

Procedure-Oriented Systems

Page 7: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

7

Characterized by a relatively small, static number of processes with an explicit message system for communicating among them

Message-Oriented Systems

Page 8: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

8

Specific communication paths Relatively static number of processes

and connections Deletion of processes tends to be very

difficult

Hallmarks

Page 9: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

9

Messages A message is a data structure meant for sending

information from one process to another Message Identifiers

A message identifier is a handle by which a particular message can be identified

Message Channels A message channel is an abstract structure which

identifies the destination of the message Message Ports

A message port is a queue capable of holding messages of a certain type or class

Facilities

Page 10: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

10

SendMessage [messageChannel, messageBody] returns [messageId]

AwaitReply [messageId] returns [messageBody]

WaitForMessage [set of messagePort] returns [messageBody, messageId, messagePort]

SendReply [messageId, messageBody]

Message Transmission Operations

Page 11: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

11

IBM’s OS/360 A discontinued batch processing operating

system developed by the IBM Corporation for their then-new System/360 mainframe computer, announced in 1964

GEC 4080 16-bit minicomputer with its unique

Nucleus feature (Marconi-Eliot Division)

Examples

Page 12: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

12

Characterized by a large, rapidly changing number of small processes and a process synchronization mechanism based on shared data

Procedure-Oriented Systems

Page 13: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

13

Global data can be both protected and efficiently accessed

Process creation is very easy

Hallmarks

Page 14: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

14

Procedures A procedure is a piece of Mesa text containing algorithms, local data,

parameters and results. Procedure call facilities – synchronous and asynchronous

The synchronous procedure call mechanism is just the ordinary Mesa procedure call statement

The asynchronous procedure call mechanism is represented by the FORK and JOIN statements

Modules and Monitors A module is the primitive Mesa unit of compilation A monitor is a special kind of Mesa module which has associated with it a

lock to prevent more than one process from executing inside of it at any one time

Module Instantiation Modules may be instantiated in Mesa by means of the NEW and START

statements Condition Variables

Condition Variables provide more flexible synchronization among events

Facilities

Page 15: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

15

HYDRA An early capability-based, object-oriented,

microkernel implemented in the programming language BLISS as part of the C.mmp project at Carnegie-Mellon University

Plessey System 250 Capability-based multiprocessing

operating system kernel

Examples

Page 16: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

16

The Duality Mapping Similarity of Programs Preservation of Performance

Characteristics of the Models

Page 17: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

17

A program or subsystem constructed strictly according to the primitives defined by one model can be mapped directly into

a dual program or subsystem which fits the other model.

The Duality Mapping

Page 18: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

18

The dual programs or subsystems are logically identical to each other.

They can also be made textually very similar, differing only in non-essential

details.

Similarity of Programs

Page 19: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

19

The performance of a program or subsystem from one model, as reflected by its queue lengths, waiting times, service rates, etc. is identical to that of its dual

system given identical scheduling strategies.

The primitive operations provided by the operating system of one model can be made as efficient as their duals of the

other model.

Preservation of Performance

Page 20: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

20

It is not very easy to change the structure of most operating systems in a way which would reflect the duality

The underlying address structures, use of global data, and styles of communication are usually bound to the design and implementation

The Cambridge CAP Computer

Empirical Support

Page 21: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

21

Comparison of the Two Models

Page 22: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

22

The two styles lead to client systems with similar program structure and performance

The computational complexity of the implementation of the system facilities to provide the two styles is similar

Underlying Similarities between Styles

Page 23: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

23

Machine Architecture Programming Environment

Underlying Differences between Styles

Page 24: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

24

There lies merit in both styles with respect to structure, performance, logical

soundness, elegance and “correctness”.

Neither model is inherently preferable.

The main consideration is the machine architecture upon which the system is

being built, not the application which the system will ultimately support.

Conclusions

Page 25: On the Duality of Operating System Structures 1. Hugh C. Lauer Xerox Corporation Palo Alto, Californi a Roger M. Needham Cambridge University Cambridge,

25

Presented By:

Amna Rafiq

Graduate StudentCS @ VT

Thank you!