- 我正在运行一个程序
foo
- 现已运行近 30 天(甚至更多)
top
直到大约 10 天前(我不能很准确),它在我的双核笔记本电脑上使用了 100% 的一个 cpu(它位于CPU 使用率排序的顶部)- 现在远未接近 CPU 使用率的顶部(顶部显示 0%)
- 前 10 个 cpu 密集型进程(根据
ps
)是:
ps auxc | sort -r -k 3 | head -10
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
bilbo 32734 15583 0.0 17816 960 pts/16 R+ 2012 24322737:01 foo
bilbo 30916 10.1 0.5 1754340 22344 ? Sl Jan12 128:06 chrome
root 1119 9.8 0.8 241288 31704 tty7 Ss+ 2012 6707:23 Xorg
bilbo 29177 9.3 15.5 1178348 10524 ? Sl 01:11 106:47 opera
bilbo 30635 6.3 0.5 696972 23156 ? Sl 01:12 72:13 opera:libflashp
bilbo 25415 1.4 3.2 805156 126352 ? Sl Jan12 18:28 chrome
bilbo 27576 1.0 0.2 373844 11060 ? S 2012 220:13 compiz
root 12642 0.9 0.4 342848 17156 ? Ssl 12:12 4:38 firestarter
bilbo 3197 0.7 0.4 84832 19436 ? Ss 2012 508:10 screen
bilbo 29956 0.7 0.2 371612 10180 ? Sl 12:02 3:34 plugin-containe
- 在上表中
foo
, 位于顶部,但%CPU
显示它使用的是15583
。这个值看起来很荒谬。 - 然而,我仍然看到其中一个处理器的利用率接近 100%
- 运行 ps 给出以下输出
ps -eF | grep foo
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
bilbo 32734 20655 99 4454 3380 0 2012 pts/16 1184016092-19:52:29 foo
ps aux | grep foo
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
bilbo 32734 15602 0.0 17816 3380 pts/16 R+ 2012 24322737:01 foo
- 正常运行时间的输出是
up 46 days, 12:43, 19 users, load average: 1.58, 1.37, 1.82
- 在我看来
ps
,1184016092-19:52:29
(fromps -e
) 和24322737:01
(fromps aux
) 返回的 TIME 值大得不可能 - 返回的
utime
和分别是:和。stime
/proc/32734/stat
85714817892
4611685975569777027
- 我预计会有一个非常大的输出,并且我想计算行数,因此我将输出通过管道传输
foo
到wc -l
。事后看来,我应该tail -f
看看程序是否正在运行。 - 好的值为
foo
0
问:foo
还在跑步吗?
输出uname -a
Linux rivendell 2.6.32-44-generic #98-Ubuntu SMP Mon Sep 24 17:27:10 UTC 2012 x86_64 GNU/Linux
我正在运行 Ubuntu 10.04.4 LTS
如果需要,很乐意提供更多详细信息。