CS 372 Operating Systems

Homework 3: Disks, File Systems, Security, Distributed systems

Due: Monday Dec 3, 2007 in class
  1. (15 pts) Implications of Disk Access Time. Suppose an instruction takes 1 nanosecond to execute (on average), a page fault takes 20 microseconds of processor time, and it takes 300 microseconds of disk time to read or write a single page. Suppose that on average 1/3 of the pages are modified (and thus the OS needs to write them back). What is the average number of instructions between page faults that would cause the disk to be busy doing page transfers all the time? (Show your work.)

  2. (15 pts) File Sizes. Suppose a UNIX disk block will hold 2056 disk addresses. What is the maximum-sized file using only the direct pointers? Using double-indirection? Using triple-indirection?

  3. (20 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.

  4. (15 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 different possible solutions.

  5. (15 pts) Happens Before Relationship. diagram

    Given the above relationships answer the following questions.

  6. (20 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.