CS 372 Operating Systems

Homework 4: Distributed Systems

Due: Monday, April at 10am in class McKinley,
10:50am in CS homework box Witchel


  1. (15 pts) Write Policies. Compare write back and write through policies on a uniprocessor using the following criteria:

    1. Speed
    2. Consistency
    3. Fault tolerance
    4. Complexity

    Does your solution still apply in a distributed system? Why or why not?

  2. (15 pts) Distributed System Design. Some of the issues we considered for designing distributed systems are: naming, remote file access, performance (caching), fault tolerance (server state), and replication.

    Choose three of these, and describe a tradeoff or interaction with one or more of the other design criteria.

  3. (10 pts) Distributed File Systems. Consider a distributed file system that does client caching using write through. The system caches individual blocks, rather than entire files. Can the client in this system have a cache consistency problem? If so, suggest two possible solution.

  4. (15 pts) Happens Before Relationship.

    Given the above relationships answer the following questions.

  5. (15 pts) Failure Recovery for Semaphores. The decentralized semaphore implementation described in class has n points of failure! Describe a failure recovery algorithm that keeps track the semaphore. Feel free to modify any of the failure recovery algorithms described in lecture or the book.

  6. (15 pts) Two-Phase Commit. What happens in the two-phase commit algorithm if a client fails during the transaction?

  7. (15 pts) Security.  Define the terms and give one example of: authentication, integrity, and privacy. Then, give an example of a system which supports authentication and integrity, but not privacy. Give another example which supports integrity and privacy, but not authentication.