linux任务管理器top的使用(转)

el/2024/5/23 1:19:35

直接在终端输入top命令就行
第一行,很容易看出来了吧
简单说一下load average: * * *
第一个数是:平均5分钟以内有多少进程在竞争CPU
第二个数是:平均10分钟以内有多少进程在竞争CPU
第三个数是:平均15分钟以内有多少进程在竞争CPU
第二行:
Tasks: *
多少个任务数,如果经常在150个以上,需要考虑一下,系统是不是出问题了。
正常在80-110个之间,都能接受。
running  多少个正在运行的进行。这是一个4核的CPU,所以同时可以1个以上的Running。
Sleeping 同Running。
Running+Sleeping=Tasks
        Stop 见名思意吧。
        zombie 僵尸进程的数量,如果有大量zombie,就需要考虑一下是不是系统那方面有出现了瓶劲,致使进程不能正常结常。或是应用程序出来了什么问题。可以慢慢查一下
通常从IO方面查一下,另外也要注意发生zombie进程的是什么进程在去分析问题出来在那里了,如果是系统进程,最好能测一下lib方面的问题,我曾遇到过slackware系统进程出现zombie后来重新编译了相应的lib做了一个光盘重装后问题解决了。
第三行:
CPU:
Us: 用户程序占用CPU时间百分比。
用户程序占用CPU的值大于50%或经常大于70%时,应该给于重示,分析问出在那里,能不能给缓存或是别的方法处理。
Sy:系统进程占用CPU时间百分比
如果该值较高,说明内核有可能存在病态问题,需要进一步分析问题出在那里。从内核编译方面着手分析一下。
Ni: Nice调整占用CPU时间百分比
Id: 系统空闲CPU时间百分比
Wa: IO等待消耗的CPU时间百分比
第四行及第五行
也是free 的输出结果
Mem:内存总数,多少被使用,多少空闲,多少做了buffer
Swap: 多少Swap,多少被使用,多少空闲,多少做了cached
这里如果Swap被使用了较多,但CPU较空闲,可以考虑禁用swap,让CPU也去干干活,不要让全部的活让内存干了就行了。
第六行:
PID        进程的ID
USER        进程的属主
PR        进程优级
NI        Nice的级别
VIRT        Virtual Image 单位Kb
在内存的虚拟镜象占用多少内存
RES        Resident size (kb)
在物理内存中占用的内存大小
SHR        Shared Mem size单位Kb
进程共享内存大小
S = State        State of the process: S=sleeping, R=running, T=stopped or traced,
D=interruptible sleep, Z=zombie. The process state is discussed further in
1.1.7, “Process state”.
多注意一下这个,有很多BT的面试希望问这个
%CPU        CPU占用的百分数
%MEM        Mem占用的百分数
TIME+        占用CPU的时间
COMMAND        运行的程序
在Top中一些有用的建:
t        把CPU那例关闭或打开
m        把MEM那例关闭或打开
A        按不同的方式显示Top的格式,这个很容易找到占用资源的进程,,我也最喜欢这个
f        如果对Top的显示不满意,就按f进入配置吧,象Windows的任管理器一样好配置
o        用f配置完了,记着按o应用
r        重设进程的nice级别.等于renice
k        Kill 掉相应的进程.等于kill
op命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方法。

top - 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48
Tasks:  29 total,   1 running,  28 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.3% us,  1.0% sy,  0.0% ni, 98.7% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:    191272k total,   173656k used,    17616k free,    22052k buffers
Swap:   192772k total,        0k used,   192772k free,   123988k cached
   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  1379 root      16   0  7976 2456 1980 S  0.7  1.3   0:11.03 sshd
14704 root      16   0  2128  980  796 R  0.7  0.5   0:02.72 top
     1 root      16   0  1992  632  544 S  0.0  0.3   0:00.90 init
     2 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
     3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0

统计信息区

前五行是系统整体的统计信息。第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:

01:06:48
当前时间

up 1:22
系统运行时间,格式为时:分

1 user
当前登录用户数

load average: 0.06, 0.60, 0.48
系统负载,即任务队列的平均长度。
三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。内容如下:

Tasks: 29 total
进程总数

1 running
正在运行的进程数

28 sleeping
睡眠的进程数

0 stopped
停止的进程数

0 zombie
僵尸进程数

Cpu(s): 0.3% us
用户空间占用CPU百分比

1.0% sy
内核空间占用CPU百分比

0.0% ni
用户进程空间内改变过优先级的进程占用CPU百分比

98.7% id
空闲CPU百分比

0.0% wa
等待输入输出的CPU时间百分比

0.0% hi

0.0% si

最后两行为内存信息。内容如下:

Mem: 191272k total
物理内存总量

173656k used
使用的物理内存总量

17616k free
空闲内存总量

22052k buffers
用作内核缓存的内存量

Swap: 192772k total
交换区总量

0k used
使用的交换区总量

192772k free
空闲交换区总量

123988k cached
缓冲的交换区总量。
内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,
该数值即为这些内容已存在于内存中的交换区的大小。
相应的内存再次被换出时可不必再对交换区写入。

进程信息区

统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。

序号
列名
含义

a
PID
进程id

b
PPID
父进程id

c
RUSER
Real user name

d
UID
进程所有者的用户id

e
USER
进程所有者的用户名

f
GROUP
进程所有者的组名

g
TTY
启动进程的终端名。不是从终端启动的进程则显示为 ?

h
PR
优先级

i
NI
nice值。负值表示高优先级,正值表示低优先级

j
P
最后使用的CPU,仅在多CPU环境下有意义

k
%CPU
上次更新到现在的CPU时间占用百分比

l
TIME
进程使用的CPU时间总计,单位秒

m
TIME+
进程使用的CPU时间总计,单位1/100秒

n
%MEM
进程使用的物理内存百分比

o
VIRT
进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

p
SWAP
进程使用的虚拟内存中,被换出的大小,单位kb。

q
RES
进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

r
CODE
可执行代码占用的物理内存大小,单位kb

s
DATA
可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb

t
SHR
共享内存大小,单位kb

u
nFLT
页面错误次数

v
nDRT
最后一次写入到现在,被修改过的页面数。

w
S
进程状态。
D=不可中断的睡眠状态
R=运行
S=睡眠
T=跟踪/停止
Z=僵尸进程

x
COMMAND
命令名/命令行

y
WCHAN
若该进程在睡眠,则显示睡眠中的系统函数名

z
Flags
任务标志,参考 sched.h

默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通过下面的快捷键来更改显示内容。

更改显示内容

通过 f 键可以选择显示的内容。按 f 键之后会显示列的列表,按 a-z 即可显示或隐藏对应的列,最后按回车键确定。

o 键可以改变列的显示顺序。按小写的 a-z 可以将相应的列向右移动,而大写的 A-Z 可以将相应的列向左移动。最后按回车键确定。

按大写的 FO 键,然后按 a-z 可以将进程按照相应的列进行排序。而大写的 R 键可以将当前的排序倒转。

命令使用

1. 工具(命令)名称
top
2.工具(命令)作用
显示系统当前的进程和其他状况; top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止. 比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间 对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定.
3.环境设置
在Linux下使用。
4.使用方法
4.1使用格式
top [-] [d] [p] [q] [c] [C] [S] [s]  [n]
4.2参数说明
d 指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之。
p 通过指定监控进程ID来仅仅监控某个进程的状态。
q该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。
S 指定累计模式
s 使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。
i  使top不显示任何闲置或者僵死进程。
c  显示整个命令行而不只是显示命令名
4.3其他
下面介绍在top命令执行过程中可以使用的一些交互命令。从使用角度来看,熟练的掌握这些命令比掌握选项还重要一些。这些命令都是单字母的,如果在命令行选项中使用了s选项,则可能其中一些命令会被屏蔽掉。
Ctrl+L 擦除并且重写屏幕。
h或者? 显示帮助画面,给出一些简短的命令总结说明。
k 终止一个进程。系统将提示用户输入需要终止的进程PID,以及需要发送给该进程什么样的信号。一般的终止进程可以使用15信号;如果不能正常结束那就使用信号9强制结束该进程。默认值是信号15。在安全模式中此命令被屏蔽。
i 忽略闲置和僵死进程。这是一个开关式命令。
q 退出程序。
r 重新安排一个进程的优先级别。系统提示用户输入需要改变的进程PID以及需要设置的进程优先级值。输入一个正值将使优先级降低,反之则可以使该进程拥有更高的优先权。默认值是10。
S 切换到累计模式。
s 改变两次刷新之间的延迟时间。系统将提示用户输入新的时间,单位为s。如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s。需要注意的是如果设置太小的时间,很可能会引起不断刷新,从而根本来不及看清显示的情况,而且系统负载也会大大增加。
f或者F 从当前显示中添加或者删除项目。
o或者O 改变显示项目的顺序。
l 切换显示平均负载和启动时间信息。
m 切换显示内存信息。
t 切换显示进程和CPU状态信息。
c 切换显示命令名称和完整命令行。
M 根据驻留内存大小进行排序。
P 根据CPU使用百分比大小进行排序。
T 根据时间/累计时间进行排序。
    W 将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法。


http://www.ngui.cc/el/4967335.html

相关文章

centos5 设置静态IP

关于CENTOS更改自动获取IP为静态IP上网的方法 1.首先利用以下3个命令来查看自己机器的一些网络信息: ifconfig 可以查看网络设备及IP地址,子网掩码等信息 route 可以查看路由信息 DNS直接查看文件:[rootkcn-110mw]#c…

JVM的垃圾回收机制详解和调优(转)

1.JVM的gc概述 gc即垃圾收集机制是指jvm用于释放那些不再使用的对象所占用的内存。java语言并不要求jvm有gc,也没有规定gc如何工作。不过常用的jvm都有gc,而且大多数gc都使用类似的算法管理内存和执行收集操作。 在充分理解了垃圾收集算法和执行过程后…

GRUB引导故障排除(转)

GRUB引导故障排除 在工作和教学中,经常发现同事和同学在碰到Linux启动直接进入GRUB界面但没有启动选单(只剩下一个“grub>”提示符)的状况,这时就认定系统已经没救,开始重新安装,甚至包括一些接触Linux…

Linux系统文件目录简介

一、简介: Linux操作系统中,以文件来表示所有的逻辑实体与非逻辑实体。逻辑实体系指文件与目录; 非逻辑实体则泛指硬盘、终端机、打印机等。 一般而言,Linux文件名称的组成除由连续字母、标点符号、数字等构成外,中间不能有空格符、路径名称符号 / 或 # * % & {} [] …….…

CentOS5.3下源码编译安装XEN3.4.2虚拟机

如果你对VMware很熟悉,那么你一定很想了解大名鼎鼎的XEN和KVM,XEN是20多年前由剑桥大学开发的,现在属于思杰公司(Citrix),其目前最新版本是3.4.2,而KVM是新崛起的新星,是XEN不容忽视的强有力的竞争对手,呵呵…

JVM中的数据类型、堆与栈介绍

数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对…

java中设置无参构造函数的必要性

先看一下的java代码:class Person { private String name""; private int age0; public Person() { System.out.println("person无参数构造函数"); } public Person(String name,int age) { this.namename; this.ageage; Sys…

CentOS5.3源配置

说明: CentOS 的网络源配置文件是:/etc/yum.repos.d/ 下的 CentOS-Base.repo。 配置方法: 配置方法一般是: ① . 进入到repos.d 目录 $ cd /etc/yum.repos.d ② . 备份原来的源 $ mv CentOS-Base.repo CentOS-Base.r…

外企面试英语收录

(1)How are you today? 你今天怎么样?   (2)Did you have any trouble ? 你有什么困难么?()What do you think of the weather lately? 最近天气怎么样?   …

shell下进程的前台与后台运行

跟系统任务相关的几个命令:fg、bg、jobs、&、ctrlz1. & 最经常被用到 这个用在一个命令的最后,可以把这个命令放到后台执行2. ctrl z 可以将一个正在前台执行的命令放到后台,并且暂停3. jobs 查看当前有多少在后台运行的命…