CS 3733 Operating Systems, Fall 2010 Exam 1 Comments

Grade Distribution:
90-100: 0
80-89: 8
70-79: 8
60-69: 1
50-59: 3
below 50:1
Average: 73

  1. These were referenced on the review web page. Many students had trouble with this one.
  2. The diagram is in the book.
  3. Do not say that the PCB controls anything. It is just a data structure.
  4. Recall that static has two meanings when it is applied to a variable. Which meaning is determined by where that variable is declared.
  5. MLFQ is a particular way of handling priorities. It is not the only way. Each queue can have its own scheduling algorithm.
    1. The SFT is not directly related to directories or hard links.
      Entries correspond to open files only.
    2. A number of students confused the SFT with an SFT entry.
      It is not correct to say the the SFT contains a count and a pointer.
      This is what is stored in each entry of the SFT.
      The count stored in an entry is the not number of processes that have the corresponding file open.
      It is the number of file descriptor table entries that refer to that SFT table entry.
      One process may have many FDT entries that reference the same SFT entry. Think about dup2.
    3. It is not true that the count is incremented when an open is executed. An open causes a new entry to be created with a count of 1.
    4. It is not correct to say that for each open file, the corresponding count is incremented.
      An open file may have more than one file descriptor table entry referencing it, and this causes the count to be incremented more than once.
      A correct statement would be: for each entry in the FDT, the corresponding entry in the SFT has its count incremented.
      It is not correct to say that an entry is removed when no processes have the file open, since there may be several entries per file..
  6. Operations are rarely done "all at once".
    An important aspect is the "behaves as if" part. It is OK to lose the CPU during an atomic operation as long as it behaves as if it did not.
    You should know the difference between i.e and e.g..
    Do not say "atomic is when ..." unless you mean that atomic is a period of time.
    You could say, "an atomic operation is one which ... "
  7. This was like what was done in class, but simpler since only the parent is doing any output.
    An explanation that discusses the parent and child having the same or different file descriptors is incorrect.
    An explanation that discusses whether the parent and child share a file descriptor is incorrect.
    What the parent and child may share is the file offset.
    It is important that you read the question and not assume it is the same as one you have seen before.
  8. Most students got this one.
  9. This one was just like the sample problem on the review web page.
  10. Look at the comments in you log book.

About the Daily Log Book: