CS 4513 Operating Systems II
WPI, D Term 2000
Craig E. Wills
Final Exam (100 pts)
Given: Thursday, May 4, 2000
NAME:
This is a closed book (and notes) examination. Answer all questions
on the exam itself. Take the number of points assigned to each problem
and the amount of space provided for your answer as a measure of the
length and difficulty of the expected solution. The exam totals 100
points.
SCORE:
- 1.
- (10 points)
The following graph shows a series of events within three processes P, Q
and R with time moving to the right. Lines between each process are
messages transmitted in the direction shown. Using the implementation
described by Leslie Lamport for constructing a logical clock, write the
logical time in the box next to each event in the graph. Assume the logical clock for
all processes begins at zero.
file=logclock.eps
- 2.
- (12 points)
The designers of the Andrew File System (AFS) observed a number of
characterizations concerning the use of files. Discuss how each of the
following observations influenced the AFS design.
- (a)
- most files are small
- (b)
- many files have a short lifetime
- (c)
- system files (e.g. executables) rarely change compared to user files.
- 3.
- (12 points)
Define access and location transparency in a distributed
system.
Fill in each blank in the following table with a distributed file system
that is and is not access transparent as well as a distributed file system that
is and is not location transparent. The same system may be used more than
once if appropriate.
|
Yes |
No |
|
|
|
Access |
|
|
|
|
|
Transparent? |
|
|
|
|
|
|
|
|
Location |
|
|
|
|
|
Transparent? |
|
|
|
|
|
- 4.
- (10 points)
The information policy of a load sharing system is responsible for
gathering machine load information for transfer decisions. Give two
examples of approaches for the information policy in load sharing systems.
- 5.
- (10 points)
What is the distinction between a sender-initiated and receiver-initiated
load sharing policy? Give an example of a system that uses each type of
policy.
- 6.
- (12 points)
Assume a set of processes in a distributed system want to coordinate access
to a shared resource. Describe an algorithm for implementing mutual
exclusion amongst these processes. Be sure to indicate what a process
needs to do to request exclusive access to the resource and to release its
access to the resource.
- 7.
- (7 points)
In comparison to each machine running the same distributed operating
system, what is the approach taken by the Distributed Computing Environment
(DCE) for building a distributed system from a group of machines?
- 8.
- (12 points)
Assume you have a function/method vowelcount(), which takes as its
argument a string and returns as its result the count of vowels contained
in the string. Using either Sun RPC or Java RMI (your choice, but not
both!) show how the interface definition file is created for this
function/method. You do not have to write the contents of the
function/method.
Now show the sequence of steps to build the client, build the server and start
execution of the client. Be sure and indicate how the client locates the
server.
- 9.
- (15 points)
The Andrew File System (AFS) uses a callback mechanism for caching.
- (a)
- Describe how this mechanism works in AFS.
- (b)
- What if this mechanism were used in the World Wide Web to between Web
servers and proxy caches for caching Web objects? What are its advantages
and disadvantages?
- (c)
- An alternate way to use a callback mechanism is to combine it with a
lease so that a callback is only valid for a fixed amount of time.
Propose a callback mechanism using leases for the World Wide Web that
improves on the disadvantages from your previous answer. What are the
advantages and disadvantages of your new approach?