我有一个需要从用户空间读写的PCI设备。我正在尝试使用零拷贝;有没有办法在用户空间内完全分配,固定和获取用户空间地址的物理地址,或者我是否需要一个内核模块,比如调用virt_to_phys或get_user_pages?设备的内存通过MMIO映射到用户空间内存,因此我可以传递任何所需的数据。感谢。
答案 0 :(得分:1)
这完全是黑客攻击,但是我将Linux限制在一系列内存中,并使用MMIO为内核不知道的设备分配内存。
答案 1 :(得分:0)
基本上你需要内存可以DMA,并且据我所知只有内核模块可以做到这一点。见http://lxr.free-electrons.com/source/Documentation/PCI/PCI-DMA-mapping.txt