linux -/proc文件系统中文件的时间戳是否表示参数采样的时间?

标签 linux proc

/proc 文件系统中文件的时间戳是否表示参数采样的时间?如果不是,如何获取在/proc 下的文件中更新参数的时间戳?

最佳答案

一般来说,你不应该那么相信 stat(2) 的结果在 /proc/ 伪文件 上,这包括表观文件大小及其修改或访问时间。众所周知,许多 /proc/ 文件的大小为零(由 stat 返回)但内容非空(因此应该按顺序读取,就像你一样会读一个管道),例如/proc/self/ map

阅读更多关于 proc(5) 的信息, 还有 Documentation/filesystems/proc.txt在你的内核源代码树中。

确实,某些文件似乎具有与 open-ing 或 stat-ing 的(当前)时间相关的时间戳(例如 /proc/self/maps/proc/$$/mounts/proc/sys/kernel/randomize_va_space)但其他文件具有与启动时间相关的时间戳,例如/proc/interrupts

/proc/ 文件系统真的很神秘,关于它的最终引用是内核源代码。但我不会依赖这样一个事实,即类似参数的文件(我猜你说的是 /proc/sys/kernel/randomize_va_space ...)具有有意义的 mtime。

当然,内核不会跟踪其许多参数的修改时间。

关于linux -/proc文件系统中文件的时间戳是否表示参数采样的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30594191/

相关文章:

linux - 如何递归地将文件夹及其所有子文件夹和文件设置为 drwxrwxrwx

linux - 如何获取两个目录的差异并将创建的补丁应用到原始目录?

compare - SAS proc 比较中的 BY 语句

ruby - 如何将语句作为参数传递给方法中的 block ?

ruby - 仅当设置了 proc 时才调用可选的 proc

c - 绑定(bind)到 INADDR_LOOPBACK 时为 "Cannot assign requested address",但 INADDR_ANY 有效

linux - 使用 ldapsearch 只返回一个值

c++ - 多次 fork 后无法向父进程发送消息

c - 如何编辑proc文件?

sas - SAS:ODS EXCEL(如何命名不同的工作表)