Mail Archives: djgpp/2004/12/16/07:11:14
> Date: Thu, 16 Dec 2004 09:16:08 +0100
> From: Egon Eckert <egon AT heaven DOT industries DOT cz>
>
> What a surprise! I thought DOS does the disk IO through BIOS, which
> should know how to talk to the IDE controller efficiently (for the
> onboard at least)... May be modern BIOSes don't bother to try to
> support DOS doing just the lazy PIO (easier to implement, I suppose)
> instead of DMA?
It sounds like you are assuming that DMA is faster than PIO. That was
so once, long ago, mainly with floppy drives, but is no longer true
since ATA interfaces conquered the PC land. Nowadays, PIO is faster
than DMA, so AFAIK DMA is no longer used in disk I/O.
Also, DMA in the PC design has a disadvantage in that it completely
takes over the bus, which means that no other activity can go on if it
needs to talk to some other peripheral card.
Finally, I think BIOS is used even on Windows and Linux, so DOS is not
the only OS they need to think about.
In other words, I think DMA was abandoned for performance reasons, not
because BIOS manufacturers are lazy.
- Raw text -