CSE 451, Autumn 2004: Homework 2
Out: Monday, January 10
Due: Wednesday, January 19
Silberschatz: read chapters 3 (Processes), 4 (Threads)
*******************************
Problems
3.1) Describe the differences among short-term, medium-term, and long-term scheduling.
3.2) Describe the actions taken by a kernel to context-switch between processes.
3.4) See text. (Analysis of a forking program)
4.x1) Describe two circumstances in which a multithreaded program using kernel threads would not perform better than a single-threaded solution, on a multi-processor system.
4.x2) What are two differences between user-level threads and kernel-level threads? How do the times for context switching compare? Describe a situation where kernel threads would perform better than user threads on a single-processor system.
4.x3) What resources are used when a thread is created? How do they differ from those used when a process is created?
4.x4) Which of the following components of a program state are shared across threads in a multithreaded process? Explain. (one sentence should suffice)
a.) Register Values
b.) Heap Memory
c.) Global variables
d.) Stack Memory
4.3) Under what circumstances does a multithreaded solution using multiple kernel threads provide better performance than a single-threaded solution on a single-processor system?
4.5) Can a multithreaded solution using multiple user-level threads achieve better performance on a multiprocessor system than on a single-processor system?
4.7) See text. (Analysis of a multi-threaded program)