linux系统中top命令输出详解
Linux中的top命令显示系统正在运行的进程。它是系统管理员最重要的工具之一。被广泛用于监视服务
器的负载。top是一个交互命令。在运行top的时候还可以运行很多命令。我们会探索top命令的细节,以
及这些命令。
(译注:不同发型版本的top命令,在各种细节有所不同,如果发现不同时,请读你的帮助手册和命令内的帮助。)
1.Top命令输出:
-------------------------------------------------------------------------
首先,让我们了解一下top命令的输出,top命令会显示系统的很多信息,我们需要理解不同部分输出的
意义:top命令会显示如下输出:
前几行水平显示了不同系统参数的概括,家下来是进程和它们在列中的属性。
1.1 系统运行时间和平均负载:
--------------------------------------------------------------------------------------------------------
top命令输出的顶部显示与uptime命令输出相似。
00:15:48 -------- 当前系统时间
up 1:23 -------- 系统已经运行的时间
2 users -------- 当前登录用户的数量
load average:0.26,0.33,0.47 ----------1分钟,5分钟、15分钟系统平均负载
1.2 任务:
---------------------------------------------------------------------------------
第二行显示的是任务或者进程的总结。进程可以处于不同的状态。
147 total ---------- 共147个任务(进程)
2 running ---------- 有2个任务(进程)正在运行
145 sleeping ------- 有145个任务(进程)正在睡眠
0 stopped ---------- 有0个任务(进程)已经停止
0 zombie ---------- 有0个僵尸任务(进程)
1.3 CPU状态:
-------------------------------------------------------------------------------------------
下一行显示的是cpu的状态,这里显示了不同模式下的所占cpu时间的百分比。
1.8 us,user --------- 运行(未调整优先级的)用户进程所占的cpu时间
1.2 sy,system ------- 运行系统内核进程所占的cpu时间
0.0 ni,niced -------- 运行(已经调整优先级的)用户进程所占的cpu时间
97.0 id,idle ---------空闲进程所占的cpu时间
0.0 wa,IO wait ------- 用于等待IO完成所占的cpu时间
0.0 hi --------------- 处理硬件中断所占的cpu时间
0.0 si --------------- 处理软件中断所占的cpu时间
0.0 st --------------- 虚拟机被hypervisor偷去的cpu时间
注: Hypervisor 是一种运行在基础物理服务器和操作系统之间的中间软件层,可允许多个操作系统和 应用共享硬件。也可叫做VMM(virtual machine monitor)即虚拟机监视器
Hypervisors是一种在虚拟环境中的“元”操作系统。他们可以访问服务器上包括磁盘和内存在内
所有物理设备,Hypervisors不但协调着这些硬件资源的访问,也同时在各个虚拟机之间施加防护
当服务器启动并执行hypervisor时,它会加载所有虚拟机客服端的操作系统,同时会分配给每一台 虚拟机适量的内存、cpu、网络、磁盘。
1.4 内存使用:
-------------------------------------------------------------------------------------------
接下来两行显示内存使用率,有点像free命令。
第一行是物理内存使用
第二行是虚拟内存(交换空间)
物理内存: 全部内存 已使用内存 空闲内存 缓冲内存
交换内存: 同上
内存显示可以用 m 命令切换
1.5 字段/列
-------------------------------------------------------------------------------------------
在横向列出的系统属性和状态下面,是以列显示的进程,不同的列代表下面要解释的属性
PID -------- 进程ID,进程的唯一标示符
USER -------- 进程所有者的实际用户名
PR -------- 进程的调度优先级。这个字段的一些值是rt,这意味着这些进程运行在实时态
NI -------- 进程的nice值(优先级),越小的值意味着越高的优先级
VIRT -------- 进程使用的虚拟内存
RES -------- 驻留内存大小。驻留内存是任务使用的非交换物理内存大小
SHR -------- 进程使用的共享内存
S -------- 进程的状态,它有一下不同的值:
D - 不可中断的睡眠态
R - 运行态
S - 睡眠态
T - 被跟踪或已停止
Z - 僵尸态
%CPU ------- 从上一次更新时到现在任务所使用的CPU时间百分比
%MEM ------- 进程使用的可用物理内存百分比
TIME+ ------- 任务启动后到现在所使用的全部CPU时间,紧缺到百分之一秒。
COMMAND ----- 运行进程所使用的命令
注:还有许多在默认情况下不会显示的输出,它们可以显示进程的页错误、有效组、组ID和其他更多的 信息
本文出自 “我的未来不是梦!” 博客,请务必保留此出处http://wangyan112.blog.51cto.com/3383033/1592587
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。