Homework 1

csc332 Spring 2008

Assigned on Feb. 20, 2008

Due on Feb. 27, 2008

1 Explain why caches are useful. What problems do they solve? What problems do they cause? If a cache can be made as large as the main memory, why not make it that large?

2. Direct memory access is used for high-speed I/O devices in order to avoid increasing the CPU's execution load. a. How does the CPU interface with the device to coordinate the transfer? b. How does the CPU know when the memory operations are complete?

c. The CPU is allowed to execute other programs while the DMA controller is transferring data. Does this process interfere with the execution of the user program? If so, describe what forms of interference are caused?

3. List five services provided by an operating system that are designed to make it more convenient for users to use the computer system.

4. What are the 4 hardware components of a computer system? Explain briefly each of these components.

5. Explain interrupt systems. What processing (both hardware and software)

need be done when an interrupt occurs?