我有一个 PCI 设备需要从用户空间读取和写入。我正在尝试使用零拷贝;有没有一种方法可以完全在用户空间内分配、固定和获取用户空间地址的物理地址,或者我是否需要一个内核模块,比如调用 virt_to_phys 或 get_user_pages?设备的内存通过 MMIO 映射到用户空间内存,因此我可以将任何需要的数据传递给它。谢谢。
最佳答案
这完全是一次 hack,但我将 Linux 限制在一个内存范围内,并使用 MMIO 为我的设备分配内核不知道的内存。
关于Linux 零拷贝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8988482/