/
On the Duality of Operating System Structures On the Duality of Operating System Structures

On the Duality of Operating System Structures - PowerPoint Presentation

natalia-silvester
natalia-silvester . @natalia-silvester
Follow
393 views
Uploaded On 2016-03-29

On the Duality of Operating System Structures - PPT Presentation

1 Hugh C Lauer Xerox Corporation Palo Alto Californi a Roger M Needham Cambridge University Cambridge England Proc Second International Symposium on Operating Systems IRIA Oct 1978 ID: 271484

message system oriented operating system message operating oriented systems procedure model styles processes data structure process mesa synchronization call

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "On the Duality of Operating System Struc..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

On the Duality of Operating System Structures

1Slide2

Hugh C. Lauer

Xerox Corporation

Palo Alto, CaliforniaRoger M. NeedhamCambridge UniversityCambridge, England

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

2Slide3

Overview

Nature of the Paper

Two ModelsMessage-Oriented SystemsProcedure-Oriented SystemsCharacteristics of the ModelsEmpirical SupportUnderlying SimilaritiesUnderlying DifferencesConclusionsOutline3Slide4

“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

4Slide5

The paper is empirical in natureThe universe in the investigation is the class of operating systems

The properties of interest are processes, synchronization and inter-process communication

Nature of the Paper5Slide6

Two Models

Message-Oriented Systems

Procedure-Oriented Systems6Slide7

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

Message-Oriented Systems

7Slide8

Specific communication pathsRelatively static number of processes and connections

Deletion of processes tends to be very difficult

Hallmarks8Slide9

Messages

A message is a data structure meant for sending information from one process to another

Message IdentifiersA message identifier is a handle by which a particular message can be identifiedMessage ChannelsA message channel is an abstract structure which identifies the destination of the messageMessage PortsA message port is a queue capable of holding messages of a certain type or classFacilities9Slide10

SendMessage [

messageChannel

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

]Message Transmission Operations

10Slide11

IBM’s OS/360A 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)Examples11Slide12

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

Procedure-Oriented Systems

12Slide13

Global data can be both protected and efficiently accessed

Process creation is very easy

Hallmarks13Slide14

Procedures

A procedure is a piece of Mesa text containing algorithms, local data, parameters and results.

Procedure call facilities – synchronous and asynchronousThe synchronous procedure call mechanism is just the ordinary Mesa procedure call statementThe asynchronous procedure call mechanism is represented by the FORK and JOIN statementsModules and MonitorsA module is the primitive Mesa unit of compilationA 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 timeModule InstantiationModules may be instantiated in Mesa by means of the NEW and START statementsCondition VariablesCondition Variables provide more flexible synchronization among eventsFacilities

14Slide15

HYDRAAn early capability-based, object-oriented, microkernel implemented in the programming language BLISS as part of the

C.mmp

project at Carnegie-Mellon UniversityPlessey System 250Capability-based multiprocessing operating system kernelExamples15Slide16

The Duality MappingSimilarity of Programs

Preservation of Performance

Characteristics of the Models16Slide17

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 Mapping17Slide18

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 Programs18Slide19

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 Performance19Slide20

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 ComputerEmpirical Support20Slide21

Comparison of the Two Models

21Slide22

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 Styles22Slide23

Machine ArchitectureProgramming Environment

Underlying Differences between Styles

23Slide24

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.Conclusions24Slide25

Presented By:

Amna Rafiq

Graduate StudentCS @ VTThank you!25