Linux top命令的用法(附带实例)
top 命令是 Linux 操作系统下最常用的性能分析工具,能够实时地显示操作系统中各个进程消耗资源的情况。该命令可以显示 CPU 使用、内存使用和执行时间。
下面执行 top 命令看一下执行的情况:
接着分析 top 命令的第二行和第三行的具体含义,这两行分别给出进程和 CPU 性能的一些信息:
接着分析 top 命令的第四行和第五行的具体含义,这两行分别表示内存的性能分析信息,如下:
下面执行 top 命令看一下执行的情况:
[root@localhost ~]# top top - 15:12:58 up 3 days, 4:13, 4 users, load average: 0.29, 0.27, 0.28 Tasks: 138 total, 3 running, 133 sleeping, 1 stopped, 1 zombie Cpu(s): 24.4%us, 9.2%sy, 0.0%ni, 66.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 673164k total, 650156k used, 23008k free, 90248k buffers Swap: 524280k total, 52k used, 524228k free, 185692k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2464 root 20 0 47108 20m 7888 R 15.9 3.1 39:50.58 Xorg 20115 root 20 0 90728 18m 11m S 4.0 2.8 0:07.86 gnome-terminal … 62 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify 120 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 cqueue 122 root 15 -5 0 0 0 S 0.0 0.0 0:00.04 ksuspend_usbd 127 root 15 -5 0 0 0 S 0.0 0.0 0:01.09 khubd下面分析一下 top 命令的统计信息的含义:
top - 15:12:58 up 3 days, 4:13, 4 users, load average: 0.29, 0.27, 0.28先来分析 top 命令第一行信息,该行信息的具体含义如下:
- 5:12:58 表示系统运行的当前时间。
- up 3 days 表示系统运行时间。
- 4 users 表示登录用户的数量。
- load average: 0.29, 0.27, 0.28 表示系统负载,即任务队列的平均长度,三个数值分别为 1 分钟、5 分钟、15 分钟到现在的平均值。
接着分析 top 命令的第二行和第三行的具体含义,这两行分别给出进程和 CPU 性能的一些信息:
Tasks: 138 total, 3 running, 133 sleeping, 1 stopped, 1 zombie Cpu(s): 24.4%us, 9.2%sy, 0.0%ni, 66.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st下面我们具体说明一下各个统计信息的含义:
- 138 total 表示进程的总数;
- 3 running 表示正在运行的进程数量;
- 133 sleeping 表示睡眠的进程数量;
- 1 stopped 表示停止的进程数量;
- 1 zombie 表示僵尸进程数;
- 24.4%us 表示用户空间占用 CPU 百分比;
- 9.2%sy 表示内核空间占用 CPU 百分比;
- 0.0%ni 表示用户进程空间内改变过优先级的进程占用 CPU 百分比;
- 66.4%id 表示空闲 CPU 百分比;
- 0.0%wa 表示等待输入输出的 CPU 百分比。
接着分析 top 命令的第四行和第五行的具体含义,这两行分别表示内存的性能分析信息,如下:
Mem: 673164k total, 650156k used, 23008k free, 90248k buffers下面具体说明一下 Mem 各个统计信息的含义:
- 673164k total 表示物理内存的总的大小;
- 650156k used 表示使用的物理内存的大小;
- 23008k free 表示空闲的物理内存的大小;
- 90248k buffers 表示内核缓存内存空间的大小。
Swap: 524280k total, 52k used, 524228k free, 185692k cached下面具体分析一下Swap各个统计信息的含义:
- 524280k total 表示交换区的总量;
- 52k used 表示使用的交换区总量;
- 524228k free 表示空闲交换区总量;
- 185692k cached 表示缓冲的交换区总量。内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,该数值即为这些内容已存在于内存中的交换区的大小。相应的内存再次被换出时,可不必再对交换区写入。