IMHO Linux should be useful to similar applications also in future.
...
> On the other hand, being given that 128/16=8, 87% IOs will need to be
> double-buffered. Doing DMA in that conditions is in my opinion pretty
> stupid.
>
It is instructive to compute how much double buffering really slows down
things. Let's assume a peripheral capable of 0.5 MB/s and memory to memory
transfer rate of 20 MB/s. With double buffering for all transfers the rate
is 0.488 MB/s (assuming double buffering is implemented properly). May be
stupid but in many cases it is practical ;-)
Besides, I don't think the issue here is ISA DMA, it is >allocation of a
largish chunk of memory that is contiguous in physical memory<. The ISA
DMA is special only in that the chunk must be below 16 MB. These kinds of
allocations are needed for peripherals that don't support scatter/gather
(or don't support enough scatter/gather segments). One example might be a
PCI video board that wants to transfer images to a memory buffer.
Kai