

Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Material Type: Notes; Professor: Bridges; Class: ST: Prog Analy &Mechanization; Subject: Computer Science; University: University of New Mexico; Term: Fall 2003;
Typology: Study notes
1 / 2
This page cannot be seen from the preview
Don't miss anything!


This is a closed-book, closed-notes exam with a total of 75 points. You may not use any external source for answering these questions. Please direct any questions about this exam to Professor Bridges, who may be reached either in person in his office in 345G Farris, by phone at 277-3032, or by email at [email protected]. Turn your exam in to Professor Bridges by 5:00 PM MDT on Tuesday, August 19, 2003. Exams will not be accepted after this time except by prior arrangement with Professor Bridges. Type or write your answers to the stated number of questions in each of the following three sections. Make any reasonable assumptions necessary to answer the question, but be sure to state any assumptions that you make.
Briefly answer 3 of the following 4 questions. Your answer to each question should be no longer than one paragraph.
Provided detailed answers to two of the following three questions. Be sure to state any assumptions you make and to fully justify your answers.
Priority inversion is an important problem in scheduling and synchronization. Define what priority inversion is, and carefully illustrate how it could occur in a specific situation. How is priority inversion usually prevented?
Systems Comprehensive Exam, Fall 2003 2
A variety of different consistency models have been defined for use in distributed systems, the most important of which are sequential consistency and various forms of weak consistency. (a) Define sequential consistency. Pick and describe one specific weak consistency model. (b) Construct and show an example in which sequential consistency and your chosen form of weak consistency will return different results.
Different distributed file systems cache data at different granularities. For example, the Andrew File System (AFS) caches whole files, while the Sprite file system and most versions of NFS cache individual file blocks. (a) What are the advantages and disadvantages of each approach? (b) How does the choice of a caching mechanism relate to options for maintaining consistency and coherency in the file system? (c) How suitable is of each approach to dealing with disconnected operation (i.e., the access of cached data when disconnected from the network)?
4 Design - Answer 1 of 2 (25 points)
Provide a detailed answer to one of the following two questions. Be sure to state any assumptions you make and to fully justify your answer.
The company you work for is designing a new computer system design and heavily customizing the operating system to take advantage of this system. Two typed of non-volatile media appropriate for secondary storage are being considered for use in the system’s file system: a high-latency, high-bandwidth medium (e.g. modern disk drives) and a low-latency, low bandwidth medium (similar to e.g., compact flash memory). Both formats have the same price/megabyte. How would you customize the operating system to best take advantage of these types of storage, and approximately how much each type of memory would you suggest be included in low-end and high-end versions system?
Copy-on-write is frequently used to optimize performance of data passing and sharing between multiple processes. (Recall that in a copy-on-write system, “copied” data is actually mapped read-only into multiple processes, and an actual copy is made for a process only when it attempts to write to the data.) (a) Assuming a two-level page table, show the actions necessary for providing copy-on-write sharing for one page of data between two processes. (b) In some cases, immediately copying the data may be quicker than remapping the data. Which factors should you consider in determining which approach is better, and how do each of these factors effect the performance of each approach?