Home CS439

CS439: Principles of Computer Systems

Homework 11

(Source: Alison Norman.)

Due: 11:59 PM Monday, April 29, 2013

Homeworks will be submitted electronically. Please refer to the homework turnin instructions.

  1. (UPDATE 4/29/13, 9:22 PM: ignore this question; it's a repeat. Apologies.) In class, we covered the idea of remote procedure calls. We discussed difficulties encountered when one attempts to implement a remote procedure call. Name four of the difficulties. There are additional complications when the procedure executes a system call. What are the complications and how might you fix them?
    Adapted from Tanenbaum page 607.

  2. The network file system (NFS) protocol provides reliability via which of the following?

    a) at-most-once semantics
    b) at-least-once semantics
    c) two-phase commit
    d) transactions

  3. In two-phase commit, suppose the coordinator fails after writing "COMMIT" to disk and sending "COMMIT" to all participating nodes but before any of the nodes receive this message. Suppose that the "COMMIT" message reaches i of the n participants and that the participants implement a protocol in which they communicate with one another when they suspect that the coordinator has failed. What is the minimum number of participants that must receive the "COMMIT" message to allow the participants to complete the transaction without waiting for the coordinator to recover?

  4. Considering all the pieces of the operating system we have discussed, describe the steps the OS takes when performing a context switch. Assume that processes are waiting in the ready queue.