将用户空间缓冲区传递给内核
我想比较使用 DMA 和普通 skb_copy_datagram_iovec()
将 skb
从内核复制到用户空间时的性能。我创建一个模块来测试。有人可以告诉我如何从用户空间创建一个大缓冲区并将其传递到我的模块(因为 tcp_recvmsg()
从用户空间传递一个 iovec )。任何建议表示赞赏。提前致谢!
I want to compare the performance when we copy skb
from kernel to userspace using DMA and normal skb_copy_datagram_iovec()
. I create a module to test. May anyone show me how we can create a big buffer from userspace and pass it to my module (as tcp_recvmsg()
is passed an iovec from userspace). Any suggestions are appreciated. Thanks in advance!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
编写一个Linux字符设备驱动程序并实现writev方法。有关详细信息,请查看 Linux 设备驱动程序最新版本。
Write a Linux character device driver and implement the writev method. For details check out Linux Device Drivers latest edition.