Advertisment

IDE DMA on Linux

author-image
PCQ Bureau
New Update

The Linux kernel is intelligent enough to recognize the chipset and IDE controllers on the motherboard and subsequently enable DMA for IDE devices like hard disks and CD ROMs. In some rare cases the kernel does not recognize the chipset or due to some BIOS related problems, DMA might not be enabled. On Linux, you can check whether DMA is enabled or not using the command hdparm as:

Advertisment

hdparm

Here the device file name represents the IDE interface to which the hard disk or CDROM drive is connected. Refer to How Linux refers to IDE devices on page 126. For example to check whether DMA is enabled for the primary master IDE device, issue:

hdparm /dev/hda

Advertisment

From the displayed output you will see a line as:

using_dma = 1 (on)

This means DMA is ‘on’ for the primary master device. Instead if the output shows:

Advertisment

using_dma = 0 (off)

Then it means DMA is ‘off’. You can try to enable the DMA forcibly using the following command:

hdparm -d1

Advertisment

Subsequently you can check out the throughput or data transfer rate of an IDE device as:

hdparm -tT

This displays the time taken for reading data from the hard disk or CD as well as reading data from their caches.

Advertisment