gpt4 book ai didi

linux - 如何避免在/proc 中重复创建目录?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:40:11 25 4
gpt4 key购买 nike

我正在编写一个 Linux 内核模块,我想创建一个子目录/proc/foo/,然后在其中公开几个人工文件,这些文件将由我的模块动态生成。我知道我可以使用 proc_mkdir 创建 foo 目录,但如果它已经存在,dmesg 将显示警告,我希望保持日志干净。

现在您可能会认为在模块拆卸时应该删除/proc/foo/树,这样冗余的 mkdir 就永远不会发生。但是我正在研究一系列相关的内核模块,我想我应该让它们中的每一个单独公开/proc/foo/中的文件。也许这是非典型的?我在 proc_fs.h 中没有看到任何用于查询现有文件的函数,所以我可能做错了什么?

另一个选择是拥有一个只创建目录的模块,并让它导出一个包含 proc_dir_entry 的全局变量,然后我的所有模块都可以 extern 该变量并使用它。但是我不得不担心那个模块会先于所有其他模块加载。但也许这就是通常这样做的方式?我有兴趣了解什么是最佳做法。

最佳答案

这很奇怪。如果您真的想要将所有内容分组,只需创建一个提供/proc/foo 的模块并使其他所有内容都依赖于它。

关于linux - 如何避免在/proc 中重复创建目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43688492/

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