Как работает подсистема DMA в Linux или пишем свой драйвер Memory Extender вместо IOMMU
История от Дмитрия Точанского (YADRO) о том, как мы научились программно эмулировать IOMMU - это может пригодиться во всех случая, если вам нужно добавить битик в адрес, выданный DMA.
00:00 - Вступительная часть
00:50 - Какую проблему решали и для чего
02:44 - Как работает и зачем нужен Direct Memory Access (DMA)
04:30 - Как работает IOMMU и для чего нам пригодится
08:25 - Как устроена замена для IOMMU или схема Memory Extender
11:05 - Пример подмены для наглядности
12:45 - Возвращаемся к Linux DMA
14:25 - Возвращаемся к устройству собственного драйвера, который делает вид, что он IOMMU
20:15 - Как это работает на практике: простой и непростой случаи
25:00 - Итоги
26:25 - Вопросы докладчику
Презентация доступна на