赞
踩
标签:top
操作系统支持多任务并不是计算机同时做很多事情,而是快速的轮换着执行这些任务。linux安排不同的程序等待使用CPU。
进程的工作方式:
当系统启动的时候,内核先把自己的程序初始化为进程,然后运行一个init的程序,再由init运行一系列称为init的shell脚本,它们可以启动所有系统服务(/etc/init/)。其中许多进程以守护程序(daemon)的形式出现,仅在后台运行,没有任何用户接口。这样,即使没有登录系统,至少系统也在执行一些事务。
查看linux 系统进程命令有:top , ps , lsof , netstat
top:查看系统的资源状况(动态查看进程,,默认情况下是每3分钟更新一次)
$ top |head
top - 16:07:41 up 7:14, 2 users, load average:
Tasks:195 total, 1 running, 194 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3.8 us, 1.0 sy, 0.0 ni, 94.3 id, 0.9 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 3996960 total, 2624532 used, 1372428 free, 126300 buffers
KiB Swap: 4000764 total, 0 used, 4000764 free. 1466592 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2160 vobile 20 0 54504 13768 3608 S 6.2 0.3 1:10.25 ibus-daemon
2450 vobile 20 0 322668 72600 30316 S 6.2 1.8 6:27.18 compiz
3034 vobile 20 0 158688 25084 14120 S 6.2 0.6 0:55.09 gnome-terminal
分为两部分,上面市系统概要,下面是进程列表,进程列表以CPU使用率排序。行号字段意义
1top程序名
116:07:41当前时间
1up 7:14系统正常运行(从启动到现在)的时间
12 users有2个用户登录系统
1load average加载平均值,即等待运行的进程数,这些进程共享CPU。展示了三个数值,每个数值对应不同的时间周期。第一个是最后60秒的平均值,
下一个是前5分钟的平均值,最后一个是前15分钟的平均值。若平均值低于1.0,则指示计算机
工作不忙碌。
2Tasks: 195 total进程数目
2running正在运行或准备运行的进程
2sleeping正在睡眠,正在等待一个事件,比如一个按键或一个软件包
2stopped已停止,已经指示进程停止运行
2zombie一个死进程或一个僵尸进程,即一个已经终止的子进程,它的父进程还没有清空它
3%Cpu(s)CPU正在执行的进程的特性
33.8 us3.8% of the CPU is being used for user
processes. 这意味着进程在内核之外
31.0 sy1.0%的 CPU 时间被用于系统(内核)进程
30.0 ni0.0%的 CPU 时间被用于"nice"(低优先级)进程
394.3 id94.3%的 CPU 时间是空闲的
30.9 wa0.9%的 CPU 时间来等待 I/O
30.0 hi
30.0 si
30.0 st
4KiB Mem展示物理内存的使用情况
5KiB Swap展示交换分区(虚拟内存)的使用情况
字段意义
PID进程号
USER用户ID进程所有者
PR每个进程的优先级别
NI每个优先级的值
VIRT虚拟内存大小
RES驻留内存大小(KB)CODE+DATA
SHR进程使用共享内存的数量
S进程的状态 D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPUCPU使用率(进程自最近一次刷新以来所占用的CPU时间和总时间的百分比)
%MEM内存使用率(进程占用的物理内存占总内存的百分比)
TIME+进程自启动以来所占用的总CPU时间
COMMAND进程的命令名称
(CODE可执行代码占用的物理内存大小,DATA可执行代码以外的部分即数据段+栈占用的物理内存大小
虚拟内存是一个假象的内存空间,在程序运行过程中虚拟内存空间中需要被访问的部分会被映射到物理内存空间中。虚拟内存空间大只能表示程序运行过程中可访问的空间比较大,不代表物理内存空间占用也大。
驻留内存,顾名思义是指那些被映射到进程虚拟内存空间的物理内存。
VIRT表示的是进程虚拟内存空间大小。
RES的含义是指进程虚拟内存空间中已经映射到物理内存空间的那部分的大小。
看进程在运行过程中占用了多少内存应该看RS的值而不是VIRT的值。)
top的交互命令:
R 可以将当前的排序倒转。
P 根据CPU使用百分比大小进行排序 q 该选项将使top没有任何延迟的进行刷新,如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行
r重新安排一个进程的优先级别
Ctrl+L 擦除并且重写屏幕
h或者? 显示帮助画面,给出一些简短的命令总结说明。
k 终止一个进程。系统将提示用户输入需要终止的进程PID,以及需要发送给该进程什么样的信号。 一般的终止进程可以使用15信号;如果不能正常结束那就使用信号9强制结束该进程。默认值是信号15。在安全模式中此命令被屏蔽。
i 忽略闲置和僵死进程。这是一个开关式命令。
q 退出程序。
r 重新安排一个进程的优先级别。系统提示用户输入需要改变的进程PID以及需要设置的进程优先级值。输入一个正值将使优先级降低,反之则可以使该进程拥有更高的优先权。默认值是10。
S 切换到累计模式。
s 改变两次刷新之间的延迟时间。系统将提示用户输入新的时间,单位为s。如果有小数,就换算成ms。输入0值则系统将不断刷新,默认值是5s。需要注意的是如果设置太小的时间,很可能会引起不断刷新,从而根本来不及看清显示的情况,而且系统负载也会大大增加。
f或者F 从当前显示中添加或者删除项目。
o或者O 改变显示项目的顺序。
l 切换显示平均负载和启动时间信息。
m 切换显示内存信息。
t 切换显示进程和CPU状态信息。
c 切换显示命令名称和完整命令行。
M 根据驻留内存大小进行排序。
P 根据CPU使用百分比大小进行排序。
T 根据时间/累计时间进行排序。
W 将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法
top [-] [d] [p] [q] [c] [C] [S] [s] [n]
参数说明:
d 指定每两次屏幕信息刷新之间的时间间隔,当然用户可以使用s交互命令来改变之
p 通过指定监控进程ID来仅仅监控某个进程的状态
S 切换到指定累计模式
s 使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险
i 使top不显示任何闲置或者僵死进程
c 显示整个命令行而不只是显示命令名
eg: /usr/bin/top -b -d 1 -n 1 ---每1s输出1次
标签:top
原文:http://turnsole.blog.51cto.com/9558446/1678893
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。