`
wangdei
  • 浏览: 374489 次
社区版块
存档分类
最新评论

几个linux性能命令记录

阅读更多

top:

* A: PID        = Process Id
* E: USER       = User Name
* H: PR         = Priority
* I: NI         = Nice value
* O: VIRT       = Virtual Image (kb)
* Q: RES        = Resident size (kb)
* T: SHR        = Shared Mem size (kb)
* W: S          = Process Status
* K: %CPU       = CPU usage
* N: %MEM       = Memory usage (RES)
* M: TIME+      = CPU Time, hundredths
b: PPID       = Parent Process Pid
c: RUSER      = Real user name
d: UID        = User Id
f: GROUP      = Group Name
g: TTY        = Controlling Tty
j: P          = Last used cpu (SMP)
p: SWAP       = Swapped size (kb)
l: TIME       = CPU Time
r: CODE       = Code size (kb)
s: DATA       = Data+Stack size (kb)
u: nFLT       = Page Fault count
v: nDRT       = Dirty Pages count
y: WCHAN      = Sleeping in Function
z: Flags      = Task Flags <sched.h>
* X: COMMAND    = Command name/line

Flags field:
0×00000001  PF_ALIGNWARN
0×00000002  PF_STARTING
0×00000004  PF_EXITING
0×00000040  PF_FORKNOEXEC
0×00000100  PF_SUPERPRIV
0×00000200  PF_DUMPCORE
0×00000400  PF_SIGNALED
0×00000800  PF_MEMALLOC
0×00002000  PF_FREE_PAGES (2.5)
0×00008000  debug flag (2.5)
0×00024000  special threads (2.5)
0×001D0000  special states (2.5)
0×00100000  PF_USEDFPU (thru 2.4)

进程的优先级和nice级别
进程优先级是一个决定进程被CPU执行优先顺序的参数,内核会根据需要调整这个值。Nice值是一个对优先权的限制。进程优先级的值不能低于nice值。(nice值越低优先级越高)
进程优先级是无法去手动改变的,只有通过改变nice值去间接的调整进程优先级。如果一个进程运行的太慢了,你可以通过指定一个较低的nice值去为它分配更多的CPU资源。当然,这意味着其他的一些进程将被分配更少的CPU资源,运行更慢一些。Linux支持nice值的范围是19(低优先级)到-20(高优先级),默认的值是0。如果需要改变一个进程的nice值为负数(高优先级),必须使用su命令登陆到root用户。下面是一些调整nice值的命令示例,
以nice值-5开始程序xyz
#nice –n -5 xyz

改变已经运行的程序的nice值
#renice level pid

将pid为2500的进程的nice值改为10
#renice 10 2500

vmstat:

·process(procs)
r:等待运行时间的进程数量
b:处在不可中断睡眠状态的进程
w:被交换出去但是仍然可以运行的进程,这个值是计算出来的
·memoryswpd:虚拟内存的数量
free:空闲内存的数量
buff:用做缓冲区的内存数量
·swap
si:从硬盘交换来的数量
so:交换到硬盘去的数量
·IO
bi:向一个块设备输出的块数量
bo:从一个块设备接受的块数量
·system
in:每秒发生的中断数量, 包括时钟
cs:每秒发生的context switches的数量
·cpu(整个cpu运行时间的百分比)
us:非内核代码运行的时间(用户时间,包括nice时间)
sy:内核代码运行的时间(系统时间)
id:空闲时间,在Linux 2.5.41之前的内核版本中,这个值包括I/O等待时间;
wa:等待I/O操作的时间,在Linux 2.5.41之前的内核版本中这个值为0

iostat:

%user:user level(应用)的CPU占用率情况
%nice:加入nice优先级的user level的CPU占用率情况
%sys:system level(内核)的CPU占用情况
%idle:空闲的CPU资源情况

Device:块设备名
Tps:设备每秒进行传输的数量(每秒的I/O请求)。多个单独的I/O请求可以被组成一个传输操作,因为一个传输操作可以是不同的容量。
Blk_read/s, Blk_wrtn/s:该设备每秒读写的块的数量。块可能为不同的容量。
Blk_read, Blk_wrtn:自系统启动以来读写的块设备的总量。

块可能为不同的容量。块的大小一般为1024、2048、4048byte。可通过tune2fs或dumpe2fs获得:
# tune2fs -l /dev/hda1|grep ‘Block size’
Block size:               4096
# dumpe2fs -h /dev/hda1|grep ‘Block size’
dumpe2fs 1.35 (28-Feb-2004)
Block size:               4096

分享到:
评论

相关推荐

    Linux常见性能分析工具

    vmstat的输出结果分为几个部分:procs、memory、swap、io、system和cpu。其中,procs中的r列指示等待运行的进程数量,若长期大于CPU核心数,则可能CPU资源不足;b列指示阻塞状态的进程数量。memory中的swpd列显示...

    linux系统性能问题分析思路指引

    在Linux系统中,当遇到性能问题时,通常需要从以下几个方面进行综合分析: 1. **I/O (Input/Output)**:I/O操作是导致系统性能瓶颈的一个常见原因。包括磁盘I/O和网络I/O等。可以通过监控工具如`iostat`、`iotop`等...

    linux 性能优化

    - 进程的内存通常被划分为几个不同的部分: - **代码段**:存放程序的机器指令。 - **数据段**:存放程序的全局变量和静态变量。 - **堆**:动态分配的内存区域,由程序员控制。 - **栈**:用于存储局部变量等...

    Linux性能调优的几种方法

    本文将介绍Linux性能调优的几种方法,这些方法涉及内核、系统、网络等多个层面。 首先,Linux性能调优的第一种方法是Disabling daemons(关闭守护进程,简称daemons)。守护进程是Linux系统中运行在后台的一类进程...

    Linux性能监控和调优.pdf

    文档进一步列举了几个主要的性能监控领域: - **CPU使用**:监测CPU的利用率,确保CPU资源得到合理利用。 - **内存使用**:监控内存的使用情况,避免内存泄漏等问题导致的性能下降。 - **I/O(磁盘)带宽**:监测...

    linux的strace命令(详解)

    使用上述三个参数基本上就可以完成大多数调试任务了,下面举几个命令行例子: * truss -o ls.truss ls -al:跟踪 ls -al 的运行,将输出信息写到文件/tmp/ls.truss 中 * strace -f -o vim.strace vim:跟踪 vim ...

    LINUX性能调优方法总结.docx

    本文将深入探讨几个核心的Linux性能优化方法,重点关注网络性能和磁盘子系统的优化。 首先,我们来看网络性能调优。在Linux中,网络性能可以通过调整内核参数来提升。TCP协议的参数设置对网络吞吐量和响应时间有很...

    sar源码--linux性能测试工具

    **sar源码——Linux性能测试工具** `sar` 是System Activity Reporter的缩写,它是Linux系统中的一个强大性能监控工具,包含在sysstat软件包之中。sysstat-9.0.6是2010年的一个稳定版本,适用于对Linux系统的性能...

    Linux攻略 系统性能监测参数获取的方法

    CPU的使用情况记录在`/proc/stat`文件中,包括用户态(user)、nice(nice)、系统态(sys)、空闲(idle)和等待I/O完成(iowait)等几项。要计算CPU负载,可以比较两次读取`/proc/stat`文件中相应字段的差值,然后除以CPU...

    入门学习Linux常用必会60个命令实例详解doc/txt

    如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。 一般界面是这样的: Manddrake Linux release 9.1(Bamboo) for i586 renrel 2.4.21-0.13mdk on i686 / tty1 localhost login:root ...

    华为内部学习资料——Linux常用命令及基础知识介绍

    - **历史扩展**:通过`.bash_history`文件来记录命令历史。 **5.5 目录栈操作** - **`dirs`**:显示目录栈。 - **`pushd`**:将当前目录压入目录栈,并切换到指定目录。 - **`popd`**:弹出目录栈顶部的目录,并...

    监测Linux服务器性能.pdf

    本文主要介绍了几种基础工具,用于监控Linux服务器的性能,包括系统负载、进程运行、内存使用、CPU使用、I/O性能以及网络性能。 首先,系统负载的监测是评估服务器性能的关键指标。我们可以使用`uptime`命令来查看...

    Linux查看系统信息命令和方法

    这篇教程将深入探讨几个常用的Linux命令,这些命令可以帮助我们获取关于系统硬件、软件、网络以及性能等多方面的信息。 1. `uname` 命令: - `uname -a`:显示系统的内核版本、主机名、操作系统类型、硬件架构等...

    测试基础+Linux基础命令+python+monkey基础命令基础合集

    软件生命周期是指从软件项目的初始构思到软件退役的全过程,通常包括以下几个阶段: 1. **需求分析**:明确用户需求,形成需求规格说明书。 2. **设计**:根据需求文档设计软件架构和详细设计。 3. **编码**:将...

    Linux的常用网络命令 (1).pdf

    本文主要介绍了几个常用的Linux网络命令,包括FTP、telnet、rlogin、netstat、nslookup和ping。 FTP(File Transfer Protocol)是最常见的文件传输协议,提供了在TCP/IP网络中计算机之间传输文件的功能。用户可以...

    常用的Linux命令汇总

    本文将对给出的150个常用Linux命令进行分类汇总,并对每类命令中的几个关键命令进行详细解释。 #### 一、线上查询及帮助命令 1. **`man`**: 显示手册页,提供关于命令、配置文件或函数等的详细文档。 2. **`help`**...

    Linux高可用及高性能软件-HAPROXY

    HAProxy的安装分为几个步骤。首先需要从网上下载软件源代码,示例中使用的是Fedora项目的链接。接着,使用tar命令解压源代码包,切换到解压后的目录。然后,需要根据服务器的操作系统和架构来编译源代码。在这个过程...

Global site tag (gtag.js) - Google Analytics