1,ps命令

ps能够给出当前系统中进程的快照。它能捕获系统在某一事件的进程状态

命令参数:

         a                                      显示所有进程

        -a                                      显示同一终端下的所有程序

        -A                                     显示所有进程

         c                                      显示进程的真实名称

        -N                                     反向选择

        -e                                      等于“-A”

         e                                      显示环境变量

         f                                       显示程序间的关系

        -H                                     显示树状结构

         r                                       显示当前终端的进程

        T                                       显示当前终端的所有程序

        u                                       指定用户的所有进程

      -au                                      显示较详细的资讯

      -aux                                    显示所有包含其他使用者的行程 

    -C<命令>                             列出指定命令的状况

   --lines<行数>                         每页显示的行数

  --width<字符数>                     每页显示的字符数

   --help                                      显示帮助信息

   --version                                 显示版本显示

常用实例:

ps -u root                            查看root用户的进程

ps -ef                                    显示所有进程信息,包括命令行

ps  aux                                  列出目前所有的正在内存当中的程序

ps -aux --sort -pcpu | less        根据CPU使用升序排序

ps-aux --sort -pmem | less        根据内存使用大小排序

[root@localhost ~]# ps aux

USER      PID       %CPU    %MEM    VSZ    RSS    TTY    STAT    START    TIME    COMMAND

smmsp    3521    0.0    0.7    6556    1616    ?    Ss    20:40    0:00    sendmail: Queue runner@01:00:00 f

root    3532    0.0    0.2    2428    452    ?    Ss    20:40    0:00    gpm -m /dev/input/mice -t imps2

htt    3563    0.0    0.0    2956    196    ?    Ss    20:41    0:00    /usr/sbin/htt -retryonerror 0

htt    3564    0.0    1.7    29460    3704    ?    Sl    20:41    0:00    htt_server -nodaemon

root    3574    0.0    0.4    5236    992    ?    Ss    20:41    0:00    crond

xfs    3617    0.0    1.3    13572    2804    ?    Ss    20:41    0:00    xfs -droppriv -daemon

root    3627    0.0    0.2    3448    552    ?    SNs    20:41    0:00    anacron -s

root    3636    0.0    0.1    2304    420    ?    Ss    20:41    0:00    /usr/sbin/atd

dbus    3655    0.0    0.5    13840    1084    ?    Ssl    20:41    0:00    dbus-daemon-1 --system

ps aux显示项解析:

USER    用户名

UID    用户ID(User ID)

PID    进程ID(Process ID)

PPID    父进程的进程ID(Parent Process id)

SID    会话ID(Session id)

%CPU    进程的cpu占用率

%MEM    进程的内存占用率

VSZ    进程所使用的虚存的大小(Virtual Size)

RSS    进程使用的驻留集大小或者是实际内存的大小,Kbytes字节

TTY    与进程关联的终端(tty)

STAT    进程的状态:进程状态使用字符表示的(STAT的状态码)

    R 运行                正在运行或在运行队列中等待

    S 睡眠                休眠中, 受阻, 在等待某个条件的形成或接受到信号

    I 空闲    

    Z 僵死                 进程已终止, 但进程描述符存在

    D 不可中断         收到信号不唤醒和不可运行, 进程必须等待直到有中断发生。

    T 终止                 进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行。

    P 等待交换页

    W 无驻留页          没有足够的记忆体分页可分配。

    X 死掉的进程

    < 高优先级进程                    高优先序的进程

    N 低优先    级进程                低优先序的进程

    L 内存锁页                             有记忆体分页分配并缩在记忆体内

    s 进程的领导者(在它之下有子进程);

    l 多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads)

    + 位于后台的进程组 

START    进程启动时间和日期

TIME    进程使用的总cpu时间

COMMAND    正在执行的命令行命令

2,top命令

[root@localhost ~]#  top  (默认3秒刷新)

top - 12:38:33 up 50 days, 23:15,  7 users,  load average: 60.58, 61.14, 61.22

Tasks: 203 total,  60 running, 139 sleeping,   4 stopped,   0 zombie

Cpu(s) : 27.0%us, 73.0%sy,  0.0%ni,  90%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:  1939780k total,  1375280k used,   564500k free,   109680k buffers

Swap:  4401800k total,   497456k used,  3904344k free,   848712k cached

PID  USER     PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

4338 oracle    25   0  627m 209m 207m R    0  11.0 297:14.76 oracle

4267 oracle    25   0  626m 144m 143m R    6  7.6  89:16.62 oracle

3458 oracle    25   0  672m 133m 124m R    0  7.1   1283:08 oracle

3478 oracle    25   0  672m 124m 115m R    0  6.6   1272:30 oracle

3395 oracle    25   0  672m 122m 113m R    0  6.5   1270:03 oracle

3480 oracle    25   0  672m 122m 109m R    8  6.4   1274:13 oracle

3399 oracle    25   0  672m 121m 110m R    0  6.4   1279:37 oracle

TOP前五行统计信息

统计信息区前五行是系统整体的统计信息。

1. 第一行是任务队列信息

同 uptime 命令的执行结果一样

13:22:30 up 8 min,  7 users,  load average: 0.14, 0.38, 0.25

其内容如下:

12:38:33

当前时间

up 50days

系统运行时间

7 user

当前登录用户数

load average: 0.06, 0.60, 0.48

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

2. 第二、三行为进程和CPU的信息

当有多个CPU时,这些内容可能会超过两行。内容如下:

Tasks: 203 total

进程总数

60 running

正在运行的进程数

139 sleeping

睡眠的进程数

4 stopped

停止的进程数

0 zombie

僵尸进程数

Cpu(s): 27%us

用户空间占用CPU百分比

73.0% sy

内核空间占用CPU百分比

0.0% ni

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

90% id

空闲CPU百分比

0.0% wa

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





3. 第四五行为内存信息。

内容如下:

Mem: 191272k total

物理内存总量

173656k used

使用的物理内存总量

17616k free

空闲内存总量

22052k buffers

用作内核缓存的内存量

Swap: 192772k total

交换区总量

0k used

使用的交换区总量

192772k free

空闲交换区总量

123988k cached

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

进程信息解释:

列名

含义

PID

进程id

PPID

父进程id

RUSER

Real user name

UID

进程所有者的用户id

USER

进程所有者的用户名

GROUP

进程所有者的组名

TTY

启动进程的终端名

PR

优先级

NI

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

P

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

%CPU

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

TIME

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

TIME+

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

%MEM

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

VIRT

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

SWAP

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

RES

进程使用的、未被换出的物理内存大小,单位kb

RES=CODE+DATA

CODE

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

DATA

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

SHR

共享内存大小,单位kb

nFLT

页面错误次数

nDRT

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

S

进程状态

            D=不可中断的睡眠状态

            R=运行

            S=睡眠

            T=跟踪/停止

            Z=僵尸进程

COMMAND

命令名/命令行

WCHAN

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

Flags

任务标志,参考 sched.h

本文转自super李导51CTO博客,原文链接:http://blog.51cto.com/superleedo/1886802 ,如需转载请自行联系原作者

Linux 查看进程资源--ps、top命令的更多相关文章

  1. [Linux]系统管理: 进程管理(ps/top/pstree/kill/pkill), 工作管理, 系统资源查看, 系统定时任务

    进程管理:查看与终止 进程查看 1. 进程是正在执行的程序或命令. 2. 进程管理的作用: 判断服务器健康状态, 查看系统中所有进程 杀死进程 3. 查看系统中所有进程 ps aux    # 查看系 ...

  2. linux查看进程和线程的命令

    1.任务:获得进程信息 :ps命令,或者top命令,它能显示当前运行中进程的相关信息,包括进程的PID. ps命令能提供一份当前进程的快照.如果想状态可以自动刷新,可以使用top命令. 2.任务:获得 ...

  3. Linux查看进程并重启服务命令

    top -u root 查看系统进程service network restartservice iptables restartservice sshd restartservice nginx r ...

  4. linux ps top 命令 VSZ,RSS,TTY,STAT, VIRT,RES,SHR,DATA的含义【转】

    转自:http://blog.csdn.net/zjc156m/article/details/38920321 http://javawind.net/p131 VIRT:virtual memor ...

  5. linux ps top 命令 VSZ,RSS,TTY,STAT, VIRT,RES,SHR,DATA的含义

    VIRT:virtual memory usage 虚拟内存1.进程“需要的”虚拟内存大小,包括进程使用的库.代码.数据等2.假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而 ...

  6. Linux 查看进程之PS命令

    要对进程进行检测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程运行状态.Linux 系统中 我们可以使用 ps 命令查看进程. ps 命令介绍       ps(process stat ...

  7. Linux查看进程线程个数

    1.根据进程号进行查询: # pstree -p 进程号 # top -Hp 进程号 2.根据进程名字进行查询: # pstree -p `ps -e | grep server | awk '{pr ...

  8. Linux中系统检测工具top命令

    Linux中系统检测工具top命令 本文转自:https://www.cnblogs.com/zhoug2020/p/6336453.html 首先介绍top中一些字段的含义: VIRT:virtua ...

  9. linux查看进程与线程数

    1. 查看进程:ps -ef 或 ps -aux 得到进程的pid:如: ps -ef | grep process_name | grep -v "grep" | awk '{p ...

随机推荐

  1. JDBCUtils,根据当前MySQL数据库下面的表生成java实体类

    自己简单写的JDBCUtils,可以根据当前数据库下面的表生成java实体类,代码萌新,请多多包涵. 初始化配置: //驱动程序名//不固定,根据驱动 static String driver = & ...

  2. Vulnhub DC-5靶机渗透

    信息搜集 老样子,先找到靶机IP和扫描靶机 nmap -sP 192.168.146.0/24 #找靶机ip nmap -sS -Pn -A 192.168.146.141 #扫描端口 这次开的是80 ...

  3. Struts2-学习笔记系列(10)-自定义类型转换

    注意name=user和对应action中的实例名称一致 这些代码是写在HTML文件中的 <s:form action="login"> <s:textfield ...

  4. logger日志级别

    Level 描述 ALL 各级包括自定义级别 DEBUG 指定细粒度信息事件是最有用的应用程序调试 ERROR 错误事件可能仍然允许应用程序继续运行 FATAL 指定非常严重的错误事件,这可能导致应用 ...

  5. Gatling脚本编写技巧篇(二)

    脚本示例: import io.gatling.core.Predef._ import io.gatling.http.Predef._ import scala.concurrent.durati ...

  6. Jmeter--Mysql数据库压力测试

    前提环境要求:首先下载合适的数据库驱动 传送门:https://mvnrepository.com/artifact/mysql/mysql-connector-java 将下载好的驱动放到Jmete ...

  7. 前端学习笔记-H5

    H5常用标签及其属性: <a>标签做超链接: <p>段落标签,自带段间距和换行样式: <div>块标签,表示一块内容,没有具体语意,区别与p标签,块与块间没有间距: ...

  8. vue2.x学习笔记(十五)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12609450.html. 组件的自定义事件 这里来学习一下组件中的自定义事件. 事件名 不同于组件名和prop,事 ...

  9. winfrom 基础

    1 winfrom就是一种窗体开发端应用程序 2 窗体分类 1)记事本类:可以最大最小化,可以拖拽                                                窗体默 ...

  10. IN612 IN612L蓝牙5.0 SoC芯片替换NRF52832/NRF52840

    IN612L是美国公司INPLAY的SOC产品系列之一,具有多模协同2.4G无线协议栈,支持2.4G私有协议栈以及蓝牙5.0全协议栈的SOC芯片.如2mbps高数据速率模式,125kbps/500kb ...