Presentation is loading. Please wait.

Presentation is loading. Please wait.

COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.

Similar presentations


Presentation on theme: "COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM."— Presentation transcript:

1 COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM

2 Last time: URLs Soft modularity  Procedure call conventions and the memory map; the stack  Errors  Strongly-typed languages help enforce modularity. Enforced modularity; message passing and the client-server model.  Example of a client –server system: WWW Today:  Today  Client-server organization  Intermediaries; Trusted Intermediaries; Thin clients  Issues  Heterogeneity; little-endian and big-endian representation  Timing, response time.  Examples: Event service, X11; Trusted intermediaries: Email, File Systems, Web  Remote Procedure Call  Next time Strategies for name resolution Case study DNS Lecture 11 – Thursday, February 17, 2011 Lecture 112

3 3

4 4 Client/service organization Not only separates functions but also enforces this separation!!  No globally-shared state (e.g., through the stack)  Errors can only propagate from client to service and vice-versa only if the messages are not properly checked.  A client can use time-outs to detect a non-responsive service and take another course of action.  The separation of abstraction from implementation is clearer; the client needs only to know the format of the message, the implementation of the service may change. Lecture 11

5 Examples of client-server systems Event service X-windows Electronic mail as a trusted intermediary Files systems as trusted intermediaries The Word Wide Web The Domain Name System Lecture 115

6 6

7 7

8 8 Example: the X-windows (X11) X11  software system and network protocol that provides a GUI for networked computer. Developed as part of Project Athena at MIT in 1984. Separates  the service program  manipulates the display from  the client program  uses the display. An application running on one machine can access the display on a different computer. Clients operate asynchronously, multiple requests can be sent  the display rate could be much higher than the rate between the client and the server. Lecture 11

9 9 Editor is a client of  File service which is a client of  Block-storage service File service is a trusted intermediary. Lecture 11

10 10 A client-service system  the World Wide Web The information in each page is encoded and formatted according to some standard, e.g.  images: GIF, JPEG,  video: MPEG  audio: MP3 The web is based upon a “pull” paradigm. The server has the resources and the client pulls it from the server. The Web server also called an HTTP server listens at a well known port, port 80 for connections from clients. The HTTP protocol uses TCP to establish a connection between the client and the server. Some pages are created on the “fly” other have to be fetched from the disk. Lecture 11

11 11Lecture 11

12 12Lecture 11

13 13 Client server interactions in HTTP Lecture 11

14 14 RPC semantics At least once  the client stub resends a message up to a given number of times until it receives a message from the server; is no guarantee of a response  the server may end up executing the a request more than once  suitable for side-effect free operations At most once  a message is acted upon at most once.  If the timeout set for receiving the response expires then an error code is delivered to the client.  The server must keep a history of the time-stamps of all messages. Messages may arrive out of order…..  suitable for operations which have side effects Exactly once  implement the at most once and request an acknowledgment from the server. Lecture 11


Download ppt "COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM."

Similar presentations


Ads by Google