Direct Memory Access

Direct memory access (DMA) is a feature of modern computers that allows certain hardware subsystems within the computer to access system memory independently of the central processing unit (CPU).

Without DMA, when the CPU is using programmed input/output, it is typically fully occupied for the entire duration of the read or write operation, and is thus unavailable to perform other work. With DMA, the CPU initiates the transfer, does other operations while the transfer is in progress, and receives an interrupt from the DMA controller when the operation is done. This feature is useful any time the CPU cannot keep up with the rate of data transfer, or where the CPU needs to perform useful work while waiting for a relatively slow I/O data transfer. Many hardware systems use DMA, including disk drive controllers, graphics cards, network cards and sound cards. DMA is also used for intra-chip data transfer in multi-core processors. Computers that have DMA channels can transfer data to and from devices with much less CPU overhead than computers without a DMA channel. Similarly, a processing element inside a multi-core processor can transfer data to and from its local memory without occupying its processor time, allowing computation and data transfer to proceed in parallel.

DMA can also be used for "memory to memory" copying or moving of data within memory. DMA can offload expensive memory operations, such as large copies or scatter-gather operations, from the CPU to a dedicated DMA engine. An implementation example is the I/O Acceleration Technology.

Read more about Direct Memory Access:  Principle, Cache Coherency

Famous quotes containing the words direct, memory and/or access:

    Besides, our action on each other, good as well as evil, is so incidental and at random, that we can seldom hear the acknowledgments of any person who would thank us for a benefit, without some shame and humiliation. We can rarely strike a direct stroke, but must be content with an oblique one; we seldom have the satisfaction of yielding a direct benefit, which is directly received.
    Ralph Waldo Emerson (1803–1882)

    When he became all eye when one was present, and all memory when one was gone; when the youth becomes the watcher of windows, and studious of a glove, a veil, a ribbon, or the wheels of a carriage, when no place is too solitary, and none too silent.
    Ralph Waldo Emerson (1803–1882)

    The Hacker Ethic: Access to computers—and anything which might teach you something about the way the world works—should be unlimited and total.
    Always yield to the Hands-On Imperative!
    All information should be free.
    Mistrust authority—promote decentralization.
    Hackers should be judged by their hacking, not bogus criteria such as degrees, age, race, or position.
    You can create art and beauty on a computer.
    Computers can change your life for the better.
    Steven Levy, U.S. writer. Hackers, ch. 2, “The Hacker Ethic,” pp. 27-33, Anchor Press, Doubleday (1984)