Linux操作系统TOP命令详解

一.命令概述
top命令可以用来显示Linux中所有任务及系统负载/性能等相关信息。通常可以使用top命令用来协助进行问题的分析和诊断。

二.命令输出说明
top - 08:58:26 up 35 min,  3 users,  load average: 0.16, 0.06, 0.04
当前时间  启动到现在的时长, 目前有多少个用户在线, 1,5,15分钟内的平均负载(运行队列/CPU个数)
Tasks: 163 total,   1 running, 162 sleeping,   0 stopped,   0 zombie
任务: 当前任务总数,  正在运行的个数, 休眠的个数,  停止的个数, 僵死个数
Cpu(s):  2.0%us,  0.7%sy,  0.0%ni, 96.9%id,  0.0%wa,  0.3%hi,  0.0%si,  0.0%st
CPU使用情况: 用户使用, 系统使用, 调整优先级使用, 空闲, 等待, 硬中断, 软中断, 虚拟机占用(steal)
Mem:   2055040k total,  1026444k used,  1028596k free,    29472k buffers
内存使用:总大小, 已使用, 空闲内存, buffer占用(存放inode等源数据)
Swap:  5242872k total,        0k used,  5242872k free,   666916k cached
Swap使用: 总共, 已使用, 空闲, 内存中cache大小

--以下部分为进程相关信息
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                
2413 oracle    -2   0  637m  16m  14m S  0.7  0.8   6:39.89 oracle                                                                  
2370 oracle    20   0  105m 1900 1456 S  0.0  0.1   0:00.01 bash                                                                    
2397 oracle    20   0  211m  13m   9m S  0.0  0.7   0:00.42 tnslsnr                                                                 
2402 oracle    20   0  109m 1252 1000 S  0.0  0.1   0:00.00 rlwrap                                                                  
2403 oracle    20   0 69964  12m 9436 S  0.0  0.6   0:00.01 sqlplus                                                                 
2409 oracle    20   0  639m  25m  21m S  0.0  1.3   0:01.45 oracle                                                                  
2411 oracle    20   0  637m  16m  14m S  0.0  0.8   0:03.91 oracle                                                                  
2417 oracle    20   0  637m  17m  14m S  0.0  0.9   0:00.47 oracle                                                                  
2419 oracle    20   0  637m  16m  14m S  0.0  0.8   0:00.59 oracle                                                                  
2421 oracle    20   0  637m  27m  23m S  0.0  1.4   0:00.56 oracle                                                                  
2423 oracle    20   0  638m  21m  17m S  0.0  1.1   0:02.81 oracle                                                                  
2425 oracle    20   0  637m 119m 117m S  0.0  6.0   0:00.82 oracle                                                                  
2427 oracle    20   0  644m  63m  52m S  0.0  3.2   0:01.05 oracle                                                                  
2429 oracle    20   0  652m  24m  20m S  0.0  1.2   0:00.99 oracle                                                                  
2431 oracle    20   0  638m  21m  19m S  0.0  1.1   0:01.23 oracle  

进程信息中各个字段的含义:
PID        = Process Id          
USER       = User Name           
PR         = Priority(和nice都是优先级,值越小优先级越高)            
NI         = Nice value          
VIRT       = 虚拟内存使用量 (kb)  
RES        = 物理内存使用量 (kb)  
SHR        = 共享内存使用量 (kb)
S          = Process Status
’D’ = uninterruptible sleep
’R’ = running
’S’ = sleeping
’T’ = traced or stopped
’Z’ = zombie     
%CPU       = CPU usage(默认按照此字段排序)           
%MEM       = Memory usage (RES)  
TIME+      = CPU Time, hundredths
COMMAND    = Command name/line
--以下字段默认情况不显示,可以通过'f'调整是否显示
PPID       = Parent Process Pid  
RUSER      = Real user name      
UID        = User Id
GROUP      = Group Name
TTY        = Controlling Tty
P          = Last used cpu (SMP)
SWAP       = Swapped size (kb)
TIME       = CPU Time
CODE       = Code size (kb)
DATA       = Data+Stack size (kb)
nFLT       = Page Fault count
nDRT       = Dirty Pages count
WCHAN      = Sleeping in Function
Flags      = Task Flags

三.命令使用
我们可以结合相关常用参数来调用top命令达到信息收集的目的,语法如下:
top [option]
-b          以batch模式运行,每次输出都可以在屏幕上往上翻出来,结合-n可以实现信息收集或输出到指定文件;
-n    指定刷新次数,刷新num次后退出
-d    指定刷新周期
-p    监控特定的pid
-S          显示累计的CPU时间,不常用


四.交互模式
在top命令运行的过程中我们可以与之进行交互进行相关的设置和调整想要看到的内容:
Z:调整显示的配色方案
B:开启/关闭粗体(是否显示粗体的开关,关闭的时候x/y等都无效)
l:开启/关闭load部分的信息显示;
t:开启/关闭task/cpu部分的显示;
m:开启关闭mem部分的信息显示;
1:数字1控制CPU分开显示还是汇总显示;
f:添加或者减少需要显示的列
o:调整显示顺序;
F or O:选择排序字段
<,>:调整排序字段
R:调整排序方式,升序/降序;
c:控制CMD字段显示程序还是详细命令;
i:开启/关闭对空闲进程的显示;
S:累积CPU时间的显示方式;
x:高亮显示排序字段;
b:高亮显示排序字段的时候填充字段背景;
u:指定仅显示某个用户的进程;
k:杀死指定的进程,默认发送信号15(自杀)
r:调整优先级
d:调整更新间隔;
W:保存报告配置,下次运行时按照此格式显示

你可能感兴趣的:(Linux,OS)