使从 Linux 内核到用户空间的中等大小(>4K)二进制信息可用

Making available medium-sized (>4K) binary information from Linux kernel to userland

根据 Linux sysfs 条目限制在一个页面中,在大多数架构上为 4 KiB。

我目前正在开发一个 net/sched/ 模块(fq_codel 的一个分支,行为略有改变以测试某些东西)并且需要向用户空间公开大量统计信息。其中一个 KPI 约为 800 字节,另一个预计为 10–50 KiB 左右(信封背面,尚未修复)。后者显然不适合 sysfs.

信息是在操作期间生成的,但存储在预先分配的数组中,用户空间预计每秒两次左右获取它(并因此清空数组)。提高该间隔可能是可能的,但会增加相当多的系统负载。

还有哪些适合我的情况的将此类信息公开给用户空间的其他方法?

如何使用中继接口 (/Documentation/filesystems/relay.txt) 将大量数据从内核记录到用户空间