wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Direct Memory Access

profile
Jay Bhanushali
Jul 04, 2024
0 Likes
0 Discussions
133 Reads

In the field of input/output (I/O) operations in computing systems, there are several methods to control the interface between the processor and peripheral devices. These methods—programmed I/O, interrupt-driven I/O, and direct memory access (DMA)—each have their own benefits and disadvantages.
Programmed I/O is the most basic method. In instances where the I/O module encounters an I/O instruction, the processor ends it through direct communication with it. The module performs the requested task and updated its status register but does not interrupt the processor. Instead, the processor must actively poll the module to check if the operation has finished. This polling can lead to significant performance degradation since the processor essentially waits idly during this period.

In the situation where the transfer of data of large volumes is involved, DMA is by far the best option.
DMA, the processor is allowed to pass off the transfer of data tasks to a specific DMA module.
Let’s dig into it a bit more if you don’t mind: The processor begins the transfer by giving the parameters such as the operation type (read-write), the device address, the memory location, and the data size to the DMA module. Once set up, the bus is taken over by the DMA module and memory is directly interfaced with the I/O devices without the processor involvement at each data word. This way significantly saves the processor's time and data is transferred much faster.

However, DMA may have some disadvantages. When the DMA module and the processor compete for bus access, there are situations when the processor may have to pause for a while to get the bus. This is a kind of intertemporal pause, and it takes place only on rare occasions due to DMA, which, by the way, remains much better as compared to programmed and interrupt-driven I/O methods in data handling.
As is clear from the above paragraph, among the three mentioned data transfer methods, the direct memory access (DMA) technique comes with the least workload to the CPU and hence is the most effective. By making memory to I/O transfers request in a very fast time, the DMA sends out information that the computer principle memory has been doing the same. This process makes the CPU to focus on other tasks than data transfer hence achieving high overall system efficiency.


Comments ()


Sign in

Read Next

Security Issues and Countermeasures

Blog banner

Memory management

Blog banner

Fitness regime by Deepesh

Blog banner

Memory input output management

Blog banner

Dr. Venkadavarahan

Blog banner

Street foods

Blog banner

The Importance of Financial Literacy for College Students

Blog banner

Paid Email

Blog banner

Technological Advancement

Blog banner

Carrot Pickle With Raisins (lagan Nu Achar)

Blog banner

APACHE KAFKA

Blog banner

MPL and how its effects?

Blog banner

File management in os

Blog banner

SECURITY RISKS OF REMOTE WORKING

Blog banner

Threads and concurrency

Blog banner

How to use open SSL for web server - browser communication

Blog banner

Unlocking Success: Mastering Google Ads Strategies

Blog banner

38_Exploring The Honeynet Project

Blog banner

CRISP-DM Methodology

Blog banner

File management

Blog banner

Bharat Maps

Blog banner

Fashion marketing in india

Blog banner

How to make Pancakes

Blog banner

Life of a 2020-2021 student

Blog banner

Whatsapp Messenger

Blog banner

Mumbai Metro 3

Blog banner

Women empowerment

Blog banner

Security requirements for Safe E-Payments

Blog banner

A Review on Data Acquisition in Cyber Forensics

Blog banner

LiquidPlanner

Blog banner

What is Anxiety? How to manage Anxiety?

Blog banner

Development Of Modern Operating System

Blog banner

MAILFENCE

Blog banner

How Men and Women Process Pain Differently

Blog banner

Types of Threads

Blog banner

A-B-C of Networking: Part-3 (Topology [Bus & Star])

Blog banner

Deadlocks in Operating Systems

Blog banner

Android Application Components and Activity Lifecycle

Blog banner

Install Ubuntu Easily

Blog banner

Teamwork

Blog banner

Binary Search Tree (BST) in Data Structure

Blog banner

Remote Work in 2026

Blog banner