CS 110 Homework Assignment 1
Due: Friday, September 14, 9PM

The material for the questions below can be found in any operating system text.
Note, the page numbers for Tanenbaum mostly refer to the previous edition.
Remember, no hand written material. Use a text processor - you might try troff or latex/xfig.
Also remember to date and time stamp your homework.

  1. Points 3:
    S.1.7, pg. 21, Define the essential properties of the following types of operating systems: Batch, Interactive, Time Sharing, Real Time, and Distributed.
  2. Points 2:
    s.2.2,
    How does the distinction between monitor mode and user mode function as a rudimentary form of protection (security) system?
  3. Points 2:
    s.2.3, What are the differences between a trap and an interrupt? What is the use of each function?
  4. Points 2:
    MOSv1 #1.6, pg 26,
    Which of the following instructions should be allowed only in kernel mode?
    1. Disable all interrupts
    2. Read the time-of-day clock
    3. Set the time-of-day clock
    4. Change the memory map
  5. Points 2:
    MOSv1 #1.12, pg 26,
    Why is the process table needed in a timesharing system? Is it also needed in personal computer systems in which only one process exists, that process taking over the entire machine until it is finished?
  6. Points 2:
    MOSv1 #2.3, pg 71,
    Explain the difference between busy waiting and blocking.
  7. Points 2:
    mosv2.1.10
    A computer has a pipeline with four stages. Each stage takes the same time to do its work, namely, 1nsec. How many instructions per second can this machine execute?
  8. Points 2:
    mosv2.1.19
    Can the
    count = write(fg, buffer, nbytes);
    
    call return any value in count other than nbytes? If so, why?

Last modified Sept 14, 01 by mike@cs.hmc.edu