Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS533 - Concepts of Operating Systems 1 On The Duality of Operating System Structures Hugh Lauer, Xerox Roger Needham, Cambridge University 1979 Presented.

Similar presentations


Presentation on theme: "CS533 - Concepts of Operating Systems 1 On The Duality of Operating System Structures Hugh Lauer, Xerox Roger Needham, Cambridge University 1979 Presented."— Presentation transcript:

1 CS533 - Concepts of Operating Systems 1 On The Duality of Operating System Structures Hugh Lauer, Xerox Roger Needham, Cambridge University 1979 Presented by Catherine Vilhauer

2 CS533 - Concepts of Operating Systems 2 Introduction  Classic paper by Lauer and Needham(1979)  Operating Systems fall into two categories o Message-oriented systems o Procedure-oriented systems  These two systems are duals o can be mapped to one another o are logically identical o performance is also identical  As a result, which you choose based on architecture constraints

3 CS533 - Concepts of Operating Systems 3 What I’m Going to Cover  Message-Oriented System  Procedure-Oriented System  Comparison of the Two  Argument for Duality  Evidence?

4 CS533 - Concepts of Operating Systems 4 Message-Oriented Systems What are they?  Pass messages (or events) easily and efficiently among processes  Queue messages at destination process  Primitive operations for processes  Pre-emption occurs when higher priority message received

5 CS533 - Concepts of Operating Systems 5 Message-Oriented System What’s a good design?  Specific communication paths (message channels, sockets etc)  Relatively static number of processes and connections o Deletion and creation of processes can be difficult  Relatively static context for each process o virtual memories or address spaces in one-to-one correspondence with process. o Processes rarely share data in memory  Processes tend to be associated with system resources

6 CS533 - Concepts of Operating Systems 6 Message-Oriented Systems Characteristics  Synchronization implemented in message queues  Data structures passed by reference in messages  Peripheral devices treated as processes  Priorities statically assigned at time of design  Processes operate on small number of messages at a time and complete those operations before looking at message queue again  Procedural interfaces or global naming schemes not useful

7 CS533 - Concepts of Operating Systems 7 Message-Oriented Systems Canonical Model  Idealized Operating System kernel contains: o Messages and message identifiers o Message channels and Message Ports o Four message transmission operations SendMessage(MessageChannel, MessageBody) AwaitReply(MessageID) WaitForMessage(set of MessagePorts) SendReply(MsgId, MsgBody) o Process Declarations o Create Process

8 CS533 - Concepts of Operating Systems 8 An Example: SEDA

9 CS533 - Concepts of Operating Systems 9 Procedure-Oriented Systems What are they?  Oriented around procedure  Efficient context switching  Synchronization via locks, mutexes and semaphores  Process may have to wait for a lock  Preemption occurs when release performed on a lock

10 CS533 - Concepts of Operating Systems 10 Procedure-Oriented Systems What’s a good design?  Global data protected and accessed by procedural interfaces which do synchronization in controlled ways  Process creation and deletion easy  Process has just one task, but wanders over system  Encoded in common / global data structures

11 CS533 - Concepts of Operating Systems 11 Procedure-Oriented Systems Characteristics  Synchronization - queues of processes waiting for locks  Data shared directly among processes  Control of and interrupts from devices - manipulating locks and / or shared data in memory  Processes inherit priorities dynamically  Global naming schemes

12 CS533 - Concepts of Operating Systems 12 Procedure-Oriented System Canonical Model  Idealized Operating System contains: o Procedures local data algorithms parameters results o Procedure call facilities synchronous asynchronous o Modules and monitors o Condition Variables o Fork and Join

13 CS533 - Concepts of Operating Systems 13 Comparison of the Two Systems

14 CS533 - Concepts of Operating Systems 14 An Example: KNOT  Knot platform built by Behren, Condit and Brewer in following paper  Interesting that Brewer was co-author of SEDA paper arguing for event-based system 2 years before

15 CS533 - Concepts of Operating Systems 15 The Duality Mapping

16 CS533 - Concepts of Operating Systems 16 The Duality Argument Similarity of Programs  Can transform one system to the other o If written in exact style shown on previous slide  Logic unchanged Monitor Process declaration Procedure Calls SendMessage AwaitReply

17 CS533 - Concepts of Operating Systems 17 The Duality Argument Performance is Preserved  Performance of both systems the same o Execution time of program themselves But since we have already shown that the programs are identical, then the execution time of each system will be exactly the same too. o computational overhead of primitive operations they call The authors assert that the two canonical models can be made execute as efficiently as the other GEC 4080 and MESA - different systems, but same speed o queuing and waiting times (sharing resources) can make basi operations of the two models behave identically with scheduling operations. Will happen just as quickly and in the same order in both

18 CS533 - Concepts of Operating Systems 18 Evidence?  Not much empirical evidence  Cambridge CAP Computer  Hugely influential and still considered a classic

19 CS533 - Concepts of Operating Systems 19 Conclusions  No inherent different between the two styles  Produce systems of similar structure and performance  Computational complexity is similar  Why choose one over the other? o Machine architecture o Programming environment


Download ppt "CS533 - Concepts of Operating Systems 1 On The Duality of Operating System Structures Hugh Lauer, Xerox Roger Needham, Cambridge University 1979 Presented."

Similar presentations


Ads by Google