CS 3733 Operating Systems, Spring 2010 Exam 1 Comments

Grade Distribution:
90-100: 3
80-89: 9
70-79: 14
60-69: 3
50-59: 2
below 50: 1
Average: 77

  1. Arrows should be labeled by events. An event is something that happens, such as a process requesting I/O or a quantum expiring.
  2. Do not say things like: "In this case the processes have the same file descriptor." This does not make sense. What they share is the file offset which is stored in the system file table entry referenced by the process's file descriptor table entry.
  3. This one is simpler because the processes act independently.
  4. We went over this many times. For full credit you needed to list at least five of the major items stored in the inode: owner, type, permissions, size, dates, location.
  5. Here, you needed to say what MLFQ are, not just what they are used for. I was looking for something about multiple ready queues, each with a priority.
  6. For part c) P0 must lose the CPU between the two statements that were interchanged.
  7. Since it says "explain in detail" if you are using a pipe, you must explain where the pipe comes from. For example, in a) the parent must create the pipe before forking the child. For part c) a value is not the same as a variable. You cannot just say that the value is available because the variable is shared. The variable must be global, or at least have static storage class.
  8. It is understandable if you forgot that only 8 bits can be passed to the parent in the return value from a child process. But it is important to understand that there is a restriction, and it cannot be an arbitrary integer.
  9. This one was just like the assignment.
  10. Look at the comments in you log book.

About the Daily Log Book: