Linux: Top命令查询结果参数详解

1.top  -H -p 16482  (某个进程内部线程的运行情况)

Linux: Top命令查询结果参数详解

整体统计信息

第一行:系统运行状态和平均负载

    ​第一个参数:目前的时间 :10:14分

    ​第二个参数:系统目前运行的时间:运行了33分钟

    ​第三个参数:当前有多少人登录了这个系统: 1个

    第四个参数:系统负载,既任务队列的平均长度,三个数值分别代表最近1分钟,5分钟,15分钟的系统平均负载

    ​关注点1:系统负载

    ​对于单核CPU来说,0表示没有负荷,1表示满负荷,大于1表示超负荷,理想值是0.7

    ​对于多核CPU来说,用核数按比例放大就好,比如四核CPU,理想值就是4*0.7=2.8

   (该命令下按1,查看多核cpu运行情况)

    Linux: Top命令查询结果参数详解
第二行:进程相关信息

    第一个参数:进程总数:264个

    第二个参数:正在运行的进程数 : 1个

    第三个参数:睡眠的进程数:263个

    第四个参数:停止的进程数 : 0个

    第五个参数:僵尸进程数 :0个


第三行:cpu信息,按1可以切换显示多核CPU信息

    第一个参数:us用户空间占用的cpu百分比:7.7%

    第二个参数:sy内核空间占用的cpu百分比:9.1%

    第三个参数:ni用户进程空间内改变过优先级的进程占用CPU百分比:0%

    第四个参数:id 空闲CPU百分比:82.7%
    (关注点)空闲cpu百分比,这里就表示还剩多少cpu处于空闲状态

​         一般剩余不到50%就需要关注一下,是否服务器压力可能过大,
        这个根据不同的要求,具体判断就好了
        
    第五个参数:wa等待输入输出的CPU时间百分比:0%

​     第六个参数:hi CPU服务于硬件中断所耗费的时间总额:0%

​     第七个参数:si CPU服务软中断所耗费的时间总额:0.5%

​     第八个参数:st Steal time 虚拟机被hypervisor偷去的CPU时间:0%    

第四行:内存信息

    第一个参数:mem 物理内存总量 : 后缀是total

    第二个参数: 空闲内存总量 : 后缀是free

    第三个参数 :使用的物理内存总量 : 后缀是used

    ​第四个参数 : 用作内核缓存的内存量 : 后缀是buff/cache

第五行:

    ​第一个参数:交换区总量 : 后缀是total

    ​第二个参数:空闲交换区总量 : 后缀是free

    ​第三个参数:使用的交换区总量 : 后缀是used

    ​第四个参数:缓冲的交换区总量 : 后缀是avail mem

进程信息
​    因为各个系统之间,显示的参数名称不一样,但大体表示内容一致
    ​PID(process id):进程id

    ​USER (user name):进程所有者的用户名

    ​PR (priority) :优先级

    ​NI (nice value) : 负值表示高优先级,正值表示低优先级

    ​VIRT (Virtual Image (kb)) : 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

    ​RES (Resident size (kb)) : 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

    ​SHR (Shared Mem size (kb)) : 共享内存大小,单位kb

    ​S (Process Status) : 进程状态。D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程

    ​%CPU (CPU usage) : 上次更新到现在的CPU时间占用百分比。这里可能超过100%,每一个100%表示占用了一个CPU,比如230%,表示目前这个进程占用了2核CPU

    ​%MEM (Memory usage (RES)) :进程使用的物理内存百分比(如果是进程下面的线程表示的是整个线程所在的内存所占比

    ​TIME+ (CPU Time, hundredths) : 进程使用的CPU时间总计,单位1/100秒  (2:32.45 代表2分钟32秒)

    ​COMMAND (Command name/line) : 命令名/命令行