我看过一些与此类似的帖子,最引人注目的是这里,但对答案并不十分满意。我比较top并ps在一个特定的处理结果,并看到在CPU使用率巨大的差异。 top从区间到区间的变化在 <1% 到 100% 之间,包括持续高点的时期(3-4 个区间 >50%),而ps稳定在 2.2%。我正在观看的过程没有任何孩子或任何东西,所以我不太确定该怎么做。由于 中存在持续高位top,我觉得可以排除采样间隔。
正如我上面链接的问题所建议的那样,这真的只是这两个工具如何处理 I/O 等待时间的差异吗?
编辑:
我已经看到它在 中波动到 2.1% ps,但到目前为止就是这样。输出top -p 4522:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4522 root 16 0 340m 316m 4732 R 54.7 1.3 508:57.46 maui
Run Code Online (Sandbox Code Playgroud)
输出ps u -p 4522:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 4522 2.2 1.3 348764 …Run Code Online (Sandbox Code Playgroud) 我想diff对 2 个文件执行 a并让它在第一个差异处停止。diff当然,我不要求通过 完成命令,但我确实要求在找到并报告第一个差异后停止实际命令。我对一些运行非常大的文件,并期待一个完美的比赛,但还是想知道有什么不同,应该在一发现,所以diff -q,diff ... |head -1和cmp是没有好处的。而且,由于文件非常大,所以不会耗尽内存的东西会很好。虽然对于我当前的问题不是必需的,但是对于第一个(用户指定的)n 个差异的解决方案以及可以忽略空格差异的解决方案的加分。