1

我的要求是将数据存储在内核中..数据是来自网络的传入数据包..它的大小可能不同,并且必须存储例如 250 毫秒的持续时间..并且应该有 5 个这样的候选者需要内核级内存管理。 .因为数据包来得非常快..我的方法是为每个这样的候选者分配一个大内存,比如 2mb 内存..bez kmalloc 和 kfree 有时间开销..对此有什么帮助吗?

4

2 回答 2

1

sk_buffs是与网络相关的通用答案,或者正如Mike指出的那样,内核内存缓存是对您问题的更通用的答案。但是,我相信您可能已经在问题之前提出了解决方案

LTE/HSDPA/GSM 的瓶颈是驱动程序以及如何将数据从设备获取到 CPU。这取决于硬件的连接方式。您在使用 SPI、UART、SDHC、USB、PCI 吗?

此外,至少对于 HSDPA,您需要一个ppp连接。LTE不一样吗?在这种情况下,以太网不是要使用的模型。通常,您需要模拟高速 tty。此外,n_gsm提供了一个网络接口;我对这个界面并不完全熟悉,但我怀疑这是为了支持LTE. 这没有很好的记录。此外,如果这是您使用的硬件,还有Option USB 串行驱动程序。用于处理 LTE的示例补丁;n_gsm我相信这个补丁被重新设计成当前的n_gsm网络支持。

您需要告诉我们更多关于您的硬件的信息。

于 2013-03-25T15:55:42.143 回答
0

正如评论中已经指出的那样:

struct sk_buff, 它是为那个确切的特定目的而创建的

参见例如http://www.linuxfoundation.org/collaborate/workgroups/networking/skbuff

于 2013-03-25T14:11:56.647 回答