1 / 10

CS533 Concepts of Operating Systems Class 7

CS533 Concepts of Operating Systems Class 7. Integrated Task and Stack Management. Questions. What do these terms mean? process, thread, kernel-level thread, user-level thread, fiber? user-level thread stack, user stack, kernel stack? Address space?. Questions.

Download Presentation

CS533 Concepts of Operating Systems Class 7

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS533 Concepts of Operating SystemsClass 7 Integrated Task and Stack Management

  2. Questions • What do these terms mean? • process, thread, kernel-level thread, user-level thread, fiber? • user-level thread stack, user stack, kernel stack? • Address space? CS533 - Concepts of Operating Systems

  3. Questions • How might a user-level thread library support synchronous I/O calls for its threads without losing control of the CPU due to blocking? • How does this approach behave during page-faults? • Does this matter? • Can it deal with preemptions? • Do user-level thread libraries do “stack ripping”? CS533 - Concepts of Operating Systems

  4. Questions • In what way are user-level threads “faster” than kernel-level threads? • Aren’t we just layering abstractions on abstractions? • Why can’t you do preemptive user-level thread scheduling without special kernel support? • Does this mean you can only do sequential task management? • Can you do cooperative task management? • How? CS533 - Concepts of Operating Systems

  5. Questions • Is synchronization needed for cooperative user-level scheduling on uniprocessors? • What precautions must you take? • Is synchronization needed on multiprocessors? • How are synchronization operations such as spin-locks and semaphores implemented, i.e., how do you spin and how do you block? • For user level threads? • For kernel level threads? CS533 - Concepts of Operating Systems

  6. Questions • What stack management model do most OS kernels export? • How are I/O and page faults events handled? • What differences are there between virtual CPUs (threads) and real CPUs (hardware)? • How are I/O and page fault events handled? • How is time managed? • What similarities do kernel-provided scheduler activations have to hardware-provided interrupts? CS533 - Concepts of Operating Systems

  7. Questions • What synchronization-related issues do you have to worry about when writing an interrupt handler? • What about a scheduler activation handler? • Why must the user-level thread library be reentrant? • How is its pattern of entry points and synchronization concerns similar to OS kernel code? CS533 - Concepts of Operating Systems

  8. Questions • How might a scheduler activation handler deadlock? • What would a prevention-based solution look like? • What problems would it have? • What would a recovery-based solution look like? • What problems would it have? • Why does the kernel delay delivery of a second page-fault SA until the first page-fault SA on the same address has completed? CS533 - Concepts of Operating Systems

  9. Questions • What happens immediately following I/O completion if the calling thread still has more kernel code to execute? • In what ways do scheduler activations mix manual and automatic stack management models? • Are they a translation point / boundary between the two models? CS533 - Concepts of Operating Systems

  10. Reminder • Class 8 presenters • Discuss your presentation plans with me ahead of time • Mail me the final version of your slides BEFORE the class CS533 - Concepts of Operating Systems

More Related