Final Examination

CSci 555 / Neuman-Obraczka Fall 1996
Directions for completing exam

Answer the following three questions:

  1. (50 points) With the increasing popularity of the Web and the Internet, there has been some speculation that ``Internet terminals'' would replace traditional PCs. Internet terminals are very basic and cheap machines that would rely on the Internet for many services. You have been hired by TV-Web Inc to design the operating system and application environment for their new $500 Internet terminal. Your goals are to minimize the cost of the required hardware, to make the management of the system as easy as possible for the user, to provide a highly reliable internet terminal, to guarantee a steady stream of revenue for subscribed services, and to minimize the cost of providing those services so that subscription rates are competitive with other options the user might have.

    1. What applications would you make available on the Internet terminal? (5 points)
    2. What would you advise be the hardware configuration for the terminal? How much hardware would you include and what size disk and memory? Why? (5 points)
    3. How would you structure the system? What operating system services would be provided on the terminal, and which services would be provided over the network? Justify your placement of each service. (15 points)
    4. What would the filesystem for your Internet terminal look like? Where would the files be stored, and what kind of caching, if any, would you use? What kind of file sharing must be provided, and if files are shared, how will you guarantee consistency? When answering this question, be sure to consider the applications you are providing, and the way users will interact with one another. (15 points)
    5. How would you provide security for the system? What objects are to be protected, which are most vulnerable to compromise, and how will you make sure that only authorized users can access the objects? (10 points)

  2. (15 points) In class we discussed the use of redundant disks in a RAID configuration to provide improved performance and reliability. The RAID systems that were discussed were implemented in hardware, but one could implement a redundant array of disks in software with the disks distributed across a distributed system. What are the benefits and drawbacks of a software implementation of RAID in a distributed system as compared with non-replicated disks, and other approaches for maintaining replicas consistently. Consider the placement of the replicas, and the affect on reliability, availability and performance.
  3. (35 points) You have been hired to design a directory service for the Internet. Your directory service would advertise Internet services such as information archives, Web servers, and other information providers to potential clients. One of the main goals when designing such as system is scalability. You would base your design in the client-server model, where clients, on behalf of users, would query directory servers.

    1. What kind of information would your directory service provide? How would it be different from DNS? (5 points)
    2. To address scalability, how would you structure the system's name space? (5 points)
    3. How would you use caching and replication to improve the system's performance? How would you address cache and replica consistency, taking into account the properties of the information a directory service handles. (10 points)
    4. Where would you place caches, given you are designing a service for the Internet? Justify. (5 points)
    5. How would clients select which replicated server to use? (10 points)



Wed Sep 30 00:31:55 PDT 1998