Questions: Direct Memory Access (DMA) Controllers and Design

5 questions to test your understanding

Score: 0 / 5
Question 1 Multiple Choice

Using DMA, a disk controller transfers 4 KB of data to memory. How many times is the CPU directly involved in the individual word-by-word data transfer?

AZero — the DMA controller handles all word transfers autonomously; the CPU is only involved in initial setup and the final completion interrupt
BOnce per byte, since memory write operations always require a CPU instruction
COnce per 4-byte word, for each load-store operation
DTwice — once at the start of each disk sector and once when the buffer fills
Question 2 Multiple Choice

In cycle-stealing DMA mode, what happens to the CPU during the data transfer?

AThe CPU is briefly stalled for one bus cycle per word transferred but can otherwise continue executing between steals
BThe CPU is completely halted for the entire duration of the transfer
CThe CPU runs at half clock speed to share bus bandwidth with the DMA controller
DThe CPU is completely unaffected — cycle stealing uses a dedicated DMA bus that does not contend with the CPU
Question 3 True / False

After programming a DMA controller to perform a transfer, the CPU can execute other instructions while the transfer is in progress.

TTrue
FFalse
Question 4 True / False

DMA eliminates the need for interrupts largely, since the data transfer occurs without CPU involvement.

TTrue
FFalse
Question 5 Short Answer

Explain why DMA dramatically improves I/O throughput compared to interrupt-driven I/O for large data transfers.

Think about your answer, then reveal below.