Что означает виртуализация канала DMA?

Привет, я видел документы, в которых DMA работает с физическими адресами. В этом контроллер DMA фактически использует физический адрес для доступа к FIFO. В недавнем обсуждении возник вопрос, когда мы реализуем драйвер для DMA, будет ли он работать с физическим адресом или с виртуальным адресом. В ходе обсуждения также возник термин Виртуализация канала DMA. Имеет ли это какое-либо отношение к виртуальной адресации как таковой? или DMA вообще не использует виртуальную адресацию.


person achoora    schedule 06.01.2017    source источник


Ответы (1)


Многие устройства в наши дни поставляются с iommu. Это позволяет платформе создавать виртуальное адресное пространство для периферийной шины. Это можно использовать для виртуализации, а также полезно для прямого доступа к памяти при копировании большого набора разрозненных страниц памяти без поддержки сбора с разбросом.

person doron    schedule 06.01.2017