gpt4 book ai didi

c - 从内核到用户空间(DMA)

转载 作者:太空狗 更新时间:2023-10-29 17:10:10 25 4
gpt4 key购买 nike

最近,我阅读了很多关于 10gb/s NIC 的网站和书籍,它们的 DMA 以及 linux 内核(10/100 mb/s NIC)处理数据的方式,我遇到了一些问题头脑。

将 10GB/s 的数据流从 NIC 发送到用户域的最简单方法是什么(我假设能够以相同的速率处理用户域中的数据)。

你认为在用户空间内实现 DMA 缓冲区以直接从那里读取原始数据(并显然以相同的速率处理它们)是个好主意吗

或者他们有没有我没有想到的更好的解决方案:/

谢谢。

最佳答案

最简单的事情是使用 Linux 的普通套接字。它可能不是最有效的,但它是最简单的。

有一些框架可以非常有效地在用户空间接收和传输数据。它们将相同的缓冲区映射到 NIC (DMA) 和进程,因此不需要复制数据。
这些框架完全绕过内核——你必须直接与 NIC 交互。这样的框架是,例如,PF-RINGNetmap

关于c - 从内核到用户空间(DMA),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11137058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com