[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] New MiNT updates



> > As Frank replied in responses to my complains, it is because we don't yet
> > have background DMA access
> 
> Well yes, apparently that is the case. However as I am unfamiliar with the
> internals of MiNT and how disc access is done the above does not mean much
> to me. Perhaps someone could explain exactly what background DMA means and
> how that differs from the current system

First, some definitions:

DMA - Direct Memory Access:  a functionality which allows peripherals 
to buffer their operations into system memory, without passing through 
the kernel's memory management (the kernel is simply notified if/when 
a peripheral is currently accessing a memory zone - that's all).

Background DMA:  the ability to perform the above simultaneously while
other system peripherals go about their own business, as opposed to the 
kernel waiting for the peripheral to complete its memory access.

> as well as why that is necessary in order to avoid the delays which 
> are currently observed. 

The problem in performing Background DMA is that the operation will
happen completely without the kernel's intervention; we must bypass
it and directly access memory zones whose management is yet still 
under the kernel's control, for normal operations.  This goes beyond 
simply forking the disk-access routines.

I am definitely _not_ a hardware expert but, from what I can tell,
MiNT's writeback-cache management would have to become a totaly
independant process, in order to implement Background DMA.

I hope this helps.... ;-)

----------------------------------------------------------------
Martin-Eric Racine       http://www.pp.fishpool.com/~q-funk/M-E/
The Atari TT030 Homepage   http://www.megacom.net/~q-funk/TT030/
New MiNT Distribution   http://members.tripod.com/~TT030/nmd.htm
----------------------------------------------------------------