我对内核补丁有一个非常好的想法,我希望在我改变想法之前进行一些研究并查看代码示例。
我正在寻找有趣的代码示例来演示procfs的高级用法(Linux /proc
文件系统)。有趣的是,我的意思不仅仅是阅读有记录的价值。
我的想法是为每个流程提供简单的广播机制。例如,让我们考虑一个运行多个rsync
实例的进程,并希望检查每个子进程的传输状态(到目前为止传输了多少字节)。目前,我不知道有什么办法可以做。
我打算为进程提供一个最小的接口来将数据写入procfs
。该数据将放在PID目录下。例如:
/procfs/1343/data_transfered/incoming
我可以想到很多优点,主要是在并发领域。
顺便说一句,如果这种机制已经存在,请告诉......
答案 0 :(得分:3)
是的,我写过/ proc中的东西。我怀疑你不可能接受使用proc做任何事情的Linux内核补丁,除非他们只是修复那些已经存在某种破坏的东西。*
/ sysfs似乎正在发生变化。
/ proc最初用于处理过程信息,但很多misc。司机的东西最终落在了那里。
*好吧,也许他们会接受它,如果你正在做的任何事情与进程有关,而且不在驱动程序中。
答案 1 :(得分:2)
查看使用/ proc
的代码的procps包的源代码答案 2 :(得分:1)
http://github.com/tialaramex/leakdice/tree/master
使用proc来计算进程的内存地址布局,并从其堆中转储随机页面(原因在文档中有解释)。