【发布时间】:2014-06-03 05:34:26
【问题描述】:
也许我只是说错了。
我有一个 Linux 模块 (Ubuntu 12.04),它需要收集有关当前进程的信息,例如每个进程打开的文件数等。我认为执行此操作的最佳方法是让模块读取 /proc 并为其中表示的每个进程在 /proc 子目录中查找所需的信息。
显然我的模块不能调用 opendir/readdir。我原以为有一个 proc_readdir() 可以从内核空间使用,但我似乎找不到任何相关信息。
我错过了什么吗?模块有没有更好的方法来收集进程信息?如果是 proc_readdir() 那么我在哪里可以找到一些例子呢?
【问题讨论】:
-
请记住,
/proc是由内核和 VFS 层提供的。大多数驱动程序都是 VFS 的一部分。因此,如果您可以以这种方式打开文件,则可以在当前驱动程序中创建访问当前驱动程序的无限循环。那可不好。
标签: linux-kernel linux-device-driver