CSCI 3323 (Principles of Operating Systems), Fall 2020:
Reading Quiz 4

Credit:
10 points.

Reading

Be sure you have read, or at least skimmed, section 2.4 of Chapter 2 and skimmed Chapter 6.

Instructions

Answer the questions below using only the course textbook (i.e., no Web searches). Please work independently rather than in groups, and include the Honor Code pledge in what you turn in, either the full pledge or just the word “pledged”.

You may write out your answers by hand and scan them, or you may use a word processor or other program, but please submit a PDF or plain text via e-mail to my TMail address. (No links to shared files on Google Drive please.) Please use a subject line that mentions the course and the assignment (e.g., “csci 3323 quiz 4” or “O/S quiz 4”).

Questions

  1. (2 points) Why is a process scheduler needed?

  2. (2 points) What does it mean to say that a process is “CPU-bound”? “I/O-bound”?

  3. (2 points) What's the difference between a preemptive scheduling algorithm and non-preemptive one, and why are non-preemptive algorithms not good choices for an interactive system?

  4. (2 points) The textbook claims that sometimes what seems like a clever scheduling algorithm may not work well in practice. How so? (Hint: Read the section on Multiple Queues carefully. Interesting example!)

  5. (2 points) What is deadlock? livelock? starvation, in the context of locking and scheduling?




2020-12-02