Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS533 Concepts of Operating Systems Class 11

Similar presentations


Presentation on theme: "CS533 Concepts of Operating Systems Class 11"— Presentation transcript:

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

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

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

4 CS533 - Concepts of Operating Systems
Questions Why is performance a problem in process-per-layer mappings of specifications to implementations? What are the costs of crossing layer boundaries? 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? How is inter-task communication within a multi-task module implemented in Swift? CS533 - Concepts of Operating Systems

5 CS533 - Concepts of Operating Systems
Questions What do “up” and “down” mean in the context of Swift upcalls and downcalls? Why is arming required in upcalling, but not in downcalling? Why is upcalling more perilous than downcalling? When is it better to use upcalls than downcalls? Where does activity start in OS code? Where does input come from? Should you always pass data among tasks on the stack? 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? CS533 - Concepts of Operating Systems

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

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


Download ppt "CS533 Concepts of Operating Systems Class 11"

Similar presentations


Ads by Google