您的位置:首页 > 运维架构

top 命令显示 CPU 的信息是从哪里获取?

2016-09-10 11:20 176 查看
Linux top 命令执行后会输出下面的CPU usage信息。

Tasks: 133 total, 1 running, 132 sleeping, 0 stopped, 0 zombie

Cpu(s): 10.0%us, 2.0%sy, 0.0%ni, 88.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

参考 top 代码可以看到 CPU 信息是使用 /proc/stat 里的CPU 数据。

查看内核的 /proc/stat 说明如下:

> cat /proc/stat

cpu 2255 34 2290 22625563 6290 127 456 0 0 0

cpu0 1132 34 1441 11311718 3675 127 438 0 0 0

cpu1 1123 0 849 11313845 2614 0 18 0 0 0

intr 114930548 113199788 3 0 5 263 0 4 [... lots more numbers ...]

ctxt 1990473

btime 1062191376

processes 2915

procs_running 1

procs_blocked 0

softirq 183433 0 21755 12 39 1137 231 21459 2263

The very first "cpu" line aggregates the numbers in all of the other "cpuN"

lines. These numbers identify the amount of time the CPU has spent performing

different kinds of work. Time units are in USER_HZ (typically hundredths of a

second). The meanings of the columns are as follows, from left to right:

- user: normal processes executing in user mode

- nice: niced processes executing in user mode

- system: processes executing in kernel mode

- idle: twiddling thumbs

- iowait: waiting for I/O to complete

- irq: servicing interrupts

- softirq: servicing softirqs

- steal: involuntary wait

- guest: running a normal guest

- guest_nice: running a niced guest
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: