CMPSCI 377: Operating Systems

Homework 1

Due: Sept 25, 2013

Note: Please submit your solutions via moodle.
  1. Explain the difference between uniprogramming and multiprogramming.
  2. Explain why the OS attempts to overlap computation and I/O on a machine.
  3. What is Moore's law? Give an example of hardware improvements you have seen for any computing product that you can attribute to Moore's law.
  4. Why are user and kernel modes necessary on a CPU?
  5. Explain why the OS needs to prevent a process from accessing the memory allocated to another process.
  6. What is the purpose of the following registers: program counter, stack pointer?
  7. Why is I/O a privileged operation on a hardware?
  8. What is a trap and explain the purpose of a trap vector?
  9. Explain any two methods for passing parameters to the OS for a system call.
  10. What is a micro-kernel architecture for an OS kernel?