Я проходил процесс пакетной передачи и приема пакетов в последнем ядре Linux. Я вижу, что в skb есть структура, где она поддерживает «линейные» данные, а также «выгружаемые» данные.DMA данных в буфере сокета (skb) в linux
Он имеет отдельную структуру под названием skb_shared_info для представления фрагментов страницы.
Теперь я сомневаюсь, каким образом устройство DMA будет содержать все содержимое пакета? Разве это не будет разбросано по памяти?
Благодаря чида
Именно здесь играет роль [IOMMU] (http://en.wikipedia.org/wiki/IOMMU). – 0x90
@ 0x90 Спасибо за подсказку. Если бы вы могли предоставить его в качестве ответа, я согласен с ним. – CHID