我知道在典型的 Linux 系统中,/proc
和/sys
都是带有伪文件的虚拟文件结构,用于与内核通信,但是/proc/sys/kernel
和之间有什么区别/sys/kernel
呢?
以 为例/sys/kernel/uevent_seqnum
。我确信这是一个非常深奥的选项,没有人应该改变,但即便如此,它是什么,它有什么作用?
如果 中有man
内容的官方或集中页面/sys/kernel
(例如man 5 proc
)proc
,那么来自这些来源的引用将受到赞赏和优先考虑。
答案1
本质上 /proc 和 /sys 是相同的。
由于 procfs 混乱,在内核 2.5 或 2.6 中添加了 sysfs
procfs 仅用于保存进程信息。最终,所有内容开始混入 proc,并形成了一个曲折的迷宫,设备数据卡在各处的不同位置。同时,sysfs 的实现目的是将设备数据与 procfs 分开。
具体来说,/sys 维护更详细的(节点的位置实际上代表了子系统的设备层次结构)设备进程信息。对于驱动程序模型中的每个对象,都会创建一个目录。设备文件结构为:
/sys/devices - devices by physical layout
/sys/bus - symbolic links to devices
/sys/block - devices by block
/sys/class - devices by class
在您的本地系统上,您可能会找到手册页man sysfs
以及有关使用以下命令修改 /proc/sys 中的内核参数的信息man sysctl
如果你想要更多关于 /sys 的信息,你可能需要查看kernel.org 上的 Linux sysfs 文件系统白皮书[pdf] 和文档/sysfs.txt在内核源代码中。