CS 620

Assignment 1 (Total 50 points)

Due Date: 02/07/2008 (Thursday)

The assignment is to be handed in class. No late assignments will be accepted.

1. (8 points)

Answer the following questions about time-sharing:

(a) What is time-sharing? (1 point)
(b) What are the main advantages of a time-share system? (1 point)
(c) How is time-sharing usually implemented? (2 points)
(d) Under what circumstances would a user be better off using a time-sharing system, rather than a personal computer or single-user workstation? (2 points)
(e) How does a time-share system differ from a real-time system? (2 points)

2. (4 points)

Answer the following questions about command interpreter:

(a) What are command interpreters?
(b) What is the purpose of the command interpreter?
(c) Why is it usually separate from the kernel?
(d) Would it be possible for the user to develop a new command interpreter using the system-call interface provided by the operating system?

3. (4 points)

Describe the difference between symmetric and asymmetric multiprocessing. What are the advantages and disadvantages of multiprocessor systems?

4. (4 points)

What is the main advantage of multiprogramming? At any given time, the CPU executes a single process, how does multiprogramming improve CPU utilization? what is the difference between multiprogramming and multiprocessing?

5. (6 points)

A computer has a cache, main memory, and a disk. If a word is in the cache, 8 ns are required to access it. If it is in main memory, but not in cache, 70 ns are needed to load it into the cache. and then the reference is started again. If the word is not in main memory, 8 milliseconds (1 millisecond = 10^6 ns) are required to fetch it from disk, followed by 70 ns to get it into the cache. If the cache hit ratio is 0.6, and the main memory hit ratio is 0.8, what is the average access time? You must show how you arrived at your answer. If you just write down your final answer, you will not receive any credit.

6. (4 points)

What are virtual machines? Explain the relationship between the Java programming language and the virtual machine concept.

7. (6 points)

A main memory system consists of a number of memory modules attached to the system bus. When a write request is made, the bus is occupied for 100 nanoseconds (ns) by the data, address, and control signals. During the same 100 ns, and for 500 ns thereafter, the addressed memory module executes one cycle accepting and storing the data. The operation of the memory modules may overlap, but only one request can be on the bus at any time. Assume that there are eight such modules connected to the bus. What is the maximum possible rate (in words per second) at which data can be stored? Explain you answer.

8. (4 points)

Writing an operating system that can operate without interference from malicious or undebugged user programs requires some hardware assistance. Describe three hardware tools used in computers as protection mechanisms.

9. (4 points)

Answer the following questions about distributed systems:

(a) What are distributed systems? (1 point)
(b) Why are distributed systems desirable? (1 points)
(c) Distinguish between distributed systems and network. (2 points)

10. (3 points)

We have stressed the need for an operating system to make efficient use of the computing hardware. When is it appropriate for the operating system to forsake this principle and to "waste" resources? Why is such a system not really wasteful?

11. (3 points)

What are the differences between a trap and an interrupt? Can traps be generated intentionally by a user program? Explain.

Return to the CS 620 Home Page