Question:

Which one of the following is an important advantage of the DMA mode of data transfer over programmed data transfer?

Show Hint

DMA improves performance not by making I/O faster alone, but by freeing the CPU to perform other tasks simultaneously.
Updated On: Jul 6, 2026
  • It reduces memory access time
  • It improves CPU cycle time
  • It improves I/O performance by allowing unbuffered transfers
  • It improves system performance by increasing concurrency
Show Solution
collegedunia
Verified By Collegedunia

The Correct Option is D

Approach Solution - 1

Step 1: Understanding programmed I/O.
In programmed data transfer, the CPU is actively involved in every data transfer between the I/O device and memory. This keeps the CPU busy and prevents it from performing other useful tasks.
Step 2: Understanding DMA (Direct Memory Access).
In DMA mode, a dedicated DMA controller transfers data directly between the I/O device and the main memory without continuous CPU intervention. The CPU is only involved at the start and end of the transfer.
Step 3: Analyzing the advantage of DMA.
Since the CPU is free while the DMA controller handles data transfer, the CPU can execute other processes concurrently. This leads to better overall utilization of system resources.
Step 4: Final conclusion.
Thus, DMA improves overall system performance by allowing parallel execution of CPU tasks and I/O operations, thereby increasing concurrency.
Was this answer helpful?
0
0
Show Solution
collegedunia
Verified By Collegedunia

Approach Solution -2

DMA (Direct Memory Access) lets an I/O device transfer data to or from memory through a dedicated controller, without the CPU shuttling each word back and forth as it would in programmed I/O. Let's weigh each claimed advantage:

  1. It reduces memory access time: DMA doesn't make individual memory accesses any faster, memory itself operates at the same speed either way; DMA simply changes who initiates the access (a controller instead of the CPU), not how fast each access completes.
  2. It improves CPU cycle time: Cycle time is a property of the CPU's clock and circuitry, it has nothing to do with how I/O is transferred. DMA doesn't touch the CPU's internal timing at all.
  3. It improves I/O performance by allowing unbuffered transfers: DMA transfers are typically still organized in blocks/buffers between device and memory, "unbuffered" isn't the mechanism that makes DMA advantageous, and this isn't a recognized benefit of DMA.
  4. It improves system performance by increasing concurrency: While the DMA controller handles the data movement, the CPU is freed to execute other instructions or processes at the same time, instead of sitting idle waiting on each transferred word. This overlap of CPU computation with I/O transfer is exactly what "concurrency" means here, and it's the central reason DMA exists.

Only one of these describes something DMA actually changes about how the system operates.

Therefore, the correct answer is It improves system performance by increasing concurrency.

Was this answer helpful?
0
0