top命令占用cpu高

DaV*_*Vid 5 linux central-processing-unit top

我的系统是SUSE 10,我top在使用时观察到它占用了57%的CPU使用率。

CPU 利用率最高为 57%

我没有太多进程:

ps -eLf | wc -l
106
Run Code Online (Sandbox Code Playgroud)

以下是top的统计数据:

cat /proc/2913/stat
2913 (top) R 2879 2913 2879 34819 2913 8396800 411 0 0 0 60648 199580 0 0 17 0 1 516504552 4811013274 2383872 285 4294967295 134512640 134596384 3215474448 3215470376 3085449998 0 0 0 138047495 0 0 0 17 3 0 0 0


cat /proc/2913/status 
Name:   top
State:  R (running)
SleepAVG:       79%
Tgid:   2913
Pid:    2913
PPid:   2879
TracerPid:      0
Uid:    0       0       0       0
Gid:    0       0       0       0
FDSize: 256
Groups: 0 
VmPeak:     2360 kB
VmSize:     2328 kB
VmLck:         0 kB
VmHWM:      1144 kB
VmRSS:      1140 kB
VmData:      260 kB
VmStk:        84 kB
VmExe:        84 kB
VmLib:      1788 kB
VmPTE:        16 kB
Threads:        1
SigQ:   2/16383
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000000000
SigCgt: 00000000083a7007
CapInh: 0000000000000000
CapPrm: 00000000fffffeff
CapEff: 00000000fffffeff
Cpus_allowed:   00000000,00000000,00000000,0000000f
Mems_allowed:   1

## cat /proc/2913/statm
582 285 213 21 0 86 0
Run Code Online (Sandbox Code Playgroud)

top接下来我该怎么做才能找到该命令使用如此多 CPU 的原因?

ase*_*seq 0

您的服务器已运行 556 天。虽然这不应该是一个问题,但长时间的正常运行时间可能会导致一些奇怪的行为,就像您注意到的那样。没有任何可识别的原因。根据我在这种情况下的经验,重新启动可以立即解决问题。我知道这是一个愚蠢的解决方案,但为什么要浪费更多时间来弄清楚呢?

如果重新启动不能解决问题,那么就值得更深入地研究它。