Data transfer methods — which one bypasses the CPU for certain transfers? Choose the technique that moves blocks of data directly between memory and I/O with minimal CPU involvement.

Difficulty: Easy

Correct Answer: Direct memory access (DMA)

Explanation:


Introduction / Context:
Modern systems use several strategies to move data between peripherals and memory. Performance and CPU overhead vary significantly among polled I/O, interrupt-driven I/O, and direct memory access (DMA). Selecting the right method is essential for high-throughput or low-latency designs.



Given Data / Assumptions:

  • We compare I/O methods: polling, interrupts, and DMA.
  • Goal: identify which method transfers data with minimal CPU intervention during the bulk transfer.
  • Assume a typical DMA controller that arbitrates for the bus.


Concept / Approach:

With DMA, the CPU sets up the source, destination, and length, then the DMA controller takes over memory bus cycles to move data directly. The CPU is free to execute other tasks until an optional completion interrupt. Polling and interrupts both involve CPU service of each datum or small chunk, increasing overhead.


Step-by-Step Solution:

Compare methods: polling requires constant CPU checks; interrupts reduce latency but still use CPU for each event.DMA after initialization performs the transfer autonomously.Therefore, DMA is the method that bypasses most CPU activity during the transfer.


Verification / Alternative check:

Benchmarking shows much higher throughput and lower CPU utilization for DMA-based disk, network, or audio buffers compared to programmed I/O approaches.


Why Other Options Are Wrong:

Software interrupts and interrupt-driven I/O require CPU service routines; polled I/O uses CPU cycles continuously to check device status.


Common Pitfalls:

Ignoring bus contention and setup overhead; DMA is best for bulk transfers, not necessarily for single-byte latency-critical events.


Final Answer:

Direct memory access (DMA)

More Questions from Computers

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion