Homework 2

Out: Friday, October 5
Due: Friday, October 12


Topic: Processes, scheduling and lightweight threads.



Reading:

Silberschatz 6th edition: read chapters 4 (skip 4.6), 5, and 6.

Silberschatz 5th edition: read chapters 4 and 5; borrow the 6th edition from a friend and read chapter 5 in that edition. (Warning to 5th edition readers, there are other differences between the two editions -- they might not matter, but I can't guarantee it at this point.)


Problems:

1. What is the biggest performance cost in context switching?

2. What hardware/architecture support would you need to make context switching "free"? Explain how this support would be used by the OS.

3. What resources are required to create a process?

4. What resources are required to create a thread? Why or how is this different than process creation?

5. What's the advantage of including kernel threads as well as processes in an operating system?

6. In the 5th edition, do 5.4; in the 6th edition, do 6.4.