Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS533 Concepts of Operating Systems Class 11 System Structuring using Layers.

Similar presentations


Presentation on theme: "CS533 Concepts of Operating Systems Class 11 System Structuring using Layers."— Presentation transcript:

1 CS533 Concepts of Operating Systems Class 11 System Structuring using Layers

2 CS533 - Concepts of Operating Systems 2 Questions  What is the difference between the two uses of semaphores in THE? o What concepts from earlier in the class do they map to? o What two purposes are they used for in THE?  THE only supports downcalls across layer boundaries o How are they implemented?  Does THE use a procedure-based or a message- based programming model? o What is the analog of send and recv in THE?  Does THE use a thread or event-based model? o How is state managed during blocking calls?

3 CS533 - Concepts of Operating Systems 3 Questions  How are interrupts handled in THE? o Which layer handles them? o What two actions are likely to take place in an interrupt handler?  How does THE avoid deadlock?  What issues are involved in proving system correctness? o What is a homing state? o How does a process leave/return to/from its homing state? o How does layering help prove correctness? o Is correctness about specifications or implementations?

4 CS533 - Concepts of Operating Systems 4 Questions  Why is performance a problem in process-per-layer mappings of specifications to implementations? o What are the costs of crossing layer boundaries? o How do these relate to previous papers on LRPC, URPC etc?  If data is not passed across layer boundaries in buffers, how is it passed in Swift? o How is inter-task communication within a multi-task module implemented in Swift?

5 CS533 - Concepts of Operating Systems 5 Questions  What do “up” and “down” mean in the context of Swift upcalls and downcalls? o Why is arming required in upcalling, but not in downcalling? o Why is upcalling more perilous than downcalling?  When is it better to use upcalls than downcalls? o Where does activity start in OS code? Where does input come from? o Should you always pass data among tasks on the stack? o How do you decide what work must be done immediately and what to queue for later? If you queue it for later, where should you store the state?

6 CS533 - Concepts of Operating Systems 6 Questions  Are upcalls part of a thread-based or event-based programming model?  Is arming stack-ripping? o Does it leave state for a future call-back?  What safety rules (conventions) are used in Swift? o How do the restrictions on downcalling relate to event- based programming?  How does Swift implement protection?

7 CS533 - Concepts of Operating Systems 7 Reminder  Pick up your midterm exam papers  Send me your slides for next week!


Download ppt "CS533 Concepts of Operating Systems Class 11 System Structuring using Layers."

Similar presentations


Ads by Google