top命令是最流行Unix/Linux的性能工具之一。系统管理员可用运行top命令监视进程和Linux整体性能。
使用权限:所有使用者
使用方式:top [-] [d delay] [q] [c] [S] [s] [n]
说明:即时显示 process 的动态
把计?
d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S : 累积模式,会将己完成或消失的子行程 ( dead child process ) 的 CPU time 累积起来
s : 安全模式,将交谈式指令取消, 避免潜在的危机
i : 不显示任何闲置 (idle) 或无用 (zombie) 的行程
n : 更新的次数,完成后将会退出 top
b : 批次档模式,搭配 “n” 参数一起使用,可以用来将 top 的结果输出到档案内
范例:
显示更新十次后退出 ;
top -n 10
使用者将不能利用交谈式指令来对行程下命令 :
top -s
将更新显示二次的结果输入到名称为 top.log 的档案里 :
top -n 2 -b > top.log
对下面top进行说明:
top - 10:38:10 up 4 days, 17:37, 1 user, load average: 0.23, 0.14, 0.10
Tasks: 429 total, 1 running, 428 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.1%sy, 0.0%ni, 99.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 20605080k total, 2020484k used, 18584596k free, 324324k buffers
Swap: 22708216k total, 0k used, 22708216k free, 546292k cached
top - 10:38:10 up 4 days, 17:37, 1 user, load average: 0.23, 0.14, 0.10
Tasks: 429 total, 1 running, 428 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.1%sy, 0.0%ni, 99.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 20605080k total, 2020484k used, 18584596k free, 324324k buffers
Swap: 22708216k total, 0k used, 22708216k free, 546292k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
第一行:
10:38:10 — 当前系统时间
up 4 days, 17:37 — 系统已经运行了4天17小时37分钟(在这期间没有重启过)
1 user — 当前有1个用户登录系统
load average: 0.23, 0.14, 0.10— load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
10:38:10 — 当前系统时间
up 4 days, 17:37 — 系统已经运行了4天17小时37分钟(在这期间没有重启过)
1 user — 当前有1个用户登录系统
load average: 0.23, 0.14, 0.10— load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
第二行:
Tasks — 任务(进程),系统现在共有429个进程,其中处于运行中的有1个,428个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
Tasks — 任务(进程),系统现在共有429个进程,其中处于运行中的有1个,428个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行:cpu状态
0.0% us — 用户空间占用CPU的百分比。
0.1% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
99.8% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si — 软中断(Software Interrupts)占用CPU的百分比
0.0% us — 用户空间占用CPU的百分比。
0.1% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
99.8% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si — 软中断(Software Interrupts)占用CPU的百分比
第四行:内存状态
20605080k total — 物理内存总量(20GB)
2020484k used — 使用中的内存总量(2GB)
18584596k free — 空闲内存总量(18M)
324324k buffers — 缓存的内存量 (320M)
20605080k total — 物理内存总量(20GB)
2020484k used — 使用中的内存总量(2GB)
18584596k free — 空闲内存总量(18M)
324324k buffers — 缓存的内存量 (320M)
第五行:swap交换分区
22708216k 20total — 交换区总量(22GB)
0 used — 使用的交换区总量(0M)
22708216k free — 空闲交换区总量(22GB)
546292k cached — 缓冲的交换区总量(500MB)
22708216k 20total — 交换区总量(22GB)
0 used — 使用的交换区总量(0M)
22708216k free — 空闲交换区总量(22GB)
546292k cached — 缓冲的交换区总量(500MB)
第七行以下:各进程(任务)的状态监控
PID — 进程id
USER — 进程所有者
PR — 进程优先级
NI — nice值。负值表示高优先级,正值表示低优先级
VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)
PID — 进程id
USER — 进程所有者
PR — 进程优先级
NI — nice值。负值表示高优先级,正值表示低优先级
VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)
一些特殊用法
1.多U多核CPU监控
在top基本视图中,按键盘数字“1”,可监控每个逻辑CPU的状况(不是物理CPU)
2.高亮显示当前运行进程敲击键盘“b”(打开/关闭加亮效果)
3、使用h 看更多使用技巧