DMA transfer RAM-to-RAM

前端 未结 3 1919
天命终不由人
天命终不由人 2021-02-01 07:51

A friend of mine has told me that on x86 architecture DMA controller can\'t transfer between two different RAM locations. It can only transfer between RAM and peripheral (such a

3条回答
  •  佛祖请我去吃肉
    2021-02-01 08:19

    Yes, memory to memory transfer is possible well up to 80386 family I have tried with "modern" x86's :)

    Specify RAM for source and destination. You might have to watch out for coherence of the L1 cache depending on the device you are programming and if you have enabled the cache.

    You might find some code in the Linux kernel for refreshing video RAM pages in shadow memory. This rings a bell.

提交回复
热议问题