COS 318: Operating Systems, Fall 2013

Quiz 1: OS Structure, Processes, and Threads

Due: 11:55pm, Wednesday, October 2

This quiz checks your comprehension of the reading assignments and material presented in class. It covers lectures from 9/17 through 9/26. You may reference the textbook, lecture slides, and your notes. Online sites (e.g., Wikipedia) may also be consulted but you must cite them in your writeup.

Each question is worth three points. Please strive for clarity and brevity in your answers. Essay questions should require no more than one or two short paragraphs. Pseudo-code should be in the form of short descriptive English statements.

Submit your answers by clicking the "submit" link on the lecture schedule page. Only online submissions will be accepted. Please submit plain ASCII text files.

Questions:

  1. Write the pseudo-code for a system call. Describe both what happens in user-space (e.g., within a library routine) and in kernel-space. Assume that the system call parameters are passed in registers.
  2. Write the pseudo-code for a process context switch in the CPU scheduler.
  3. What is a microkernel? What are the advantages and disadvantages of the microkernel approach?
  4. What is the difference between a non-preemptive and a preemptive scheduler?