我遇到了几个讨论(linux /proc/loadavg)和文章,告诉我们/proc/loadavg
的第五列是最近进程的进程ID。但我无法在/proc
文件系统中找到PID
的文件夹。此外,在尝试cat /proc/loadavg
时,第五列每次都会按顺序递增。
为什么会这样?
答案 0 :(得分:4)
最后一个值是当前活动进程的pid(显示/proc/loadavg
的内容),这可能是cat
进程
cat /proc/loadavg
在您在屏幕上阅读结果时已经终止。
更新:
我玩弄它来证明它确实是猫的过程。我只是使用less
,保持打开并尝试调查proc文件系统。我只能说loadavg
中显示的pid不是我认为的less
的PID。我所说的仍然如此:那里列出的流程是当前的活动流程,并且已经终止。但它似乎不是cat
过程的PID。
答案 1 :(得分:2)
proc文件系统是一个伪文件系统,其文件提供了内核数据结构的接口,通常安装为/proc
。
/proc/loadavg
提供当前计算的系统平均负载。
这些值表示上一个1
,5
和15
分钟内的平均系统负载,活动/总调度实体(任务)的数量以及上次创建的进程的PID系统
示例输出
cat /proc/loadavg
1.46 1.16 0.91 2/321 6220
^ ^ ^ ^ ^
| | | | |
system load | |
in last 1 min | | Number of active/ PID of
| scheduled entities last created process
system load |
in last 5 min |
|
system load
in last 15 min
同样在尝试
cat /proc/loadavg
时,第五列每次都会按顺序递增。
它表示系统中最后创建的PID。你的cat命令也是一个过程,所以每次变化都是如此。该进程将在您签入/proc
时终止。
由于会创建/删除许多流程,并且每次执行cat /proc/loadavg
时都会更新第五个字段。