Download presentation
Presentation is loading. Please wait.
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!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.