linux上进程有5种状态:

1. 运行(正在运行或在运行队列中等待)

2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)

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

4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)

5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

1)ps a 显示现行终端机下的所有程序,包括其他用户的程序。

2)ps -A   显示所有程序。

3)ps c    列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。

4)ps -e  此参数的效果和指定"A"参数相同。

5)ps e   列出程序时,显示每个程序所使用的环境变量。

6)ps f    用ASCII字符显示树状结构,表达程序间的相互关系。

7)ps -H    显示树状结构,表示程序间的相互关系。

8)ps -N   显示所有的程序,除了执行ps指令终端机下的程序之外。

9)ps s     采用程序信号的格式显示程序状况。

10)ps S     列出程序时,包括已中断的子程序资料。

11)ps -t <终端机编号>  指定终端机编号,并列出属于该终端机的程序的状况。

12)ps u   以用户为主的格式来显示程序状况。

13)ps x   显示所有程序,不以终端机来区分。

14)ps -l     較長,較詳細的顯示該PID的信息

# ps -lA |more

F S   UID   PID  PPID  C PRI  NI ADDR SZ   WCHAN     TTY            TIME          CMD

4 S     0     1     0        0  76   0     -  1193 109952       ?             00:00:03 init

1 S     0     2     1        0 -40   -      -     0    migrat        ?             00:00:03 migration/0

1 S     0     3     1        0  94  19    -     0     ksofti         ?             00:00:00 ksoftirqd/0

1 S     0     4     1        0 -40   -      -     0    migrat        ?             00:00:02 migration/1

1 S     0     5     1        0  94  19    -     0    ksofti          ?             00:00:00 ksoftirqd/1

1 S     0     6     1        0 -40   -      -     0    migrat        ?             00:00:02 migration/2

1 S     0     7     1        0  94  19    -     0    ksofti          ?             00:00:00 ksoftirqd/2

相關信息的意義:

F  進程的標誌(flag),4表示用戶為超級用戶

S  進程的狀態(stat),各STAT的意義見下文

PID   進程的ID

C   CPU使用資源的百分比

PRI   priority(優先級)的縮寫,

NI     Nice值,

ADDR  核心功能,指出該進程在內存的那一部分,如果是運行的進程,一般都是“-”

SZ     用掉的內存的大小

WCHAN   當前進程是否正在運行,若為“-”表示正在運行

TTY     登陸者的終端位置

TIME   用掉的CPU的時間

CMD    所執行的指令

# ps aux |more

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

root         1        0.0  0.0       4772  564 ?                         S        Sep22   0:03     init [3]

root         2        0.0  0.0        0    0        ?                         S        Sep22   0:03     [migration/0]

root         3        0.0  0.0        0    0        ?                         SN      Sep22   0:00     [ksoftirqd/0]

root         4        0.0  0.0        0    0        ?                         S        Sep22   0:02     [migration/1]

root         5        0.0  0.0        0    0        ?                         SN      Sep22   0:00     [ksoftirqd/1]

root         6        0.0  0.0        0    0        ?                         Ss+     Sep22   0:02     [migration/2]

root         7        0.0  0.0        0    0        ?                         SN      Sep22   0:00     [ksoftirqd/2]

root         8        0.0  0.0        0    0        ?                         S        Sep22   0:00     [migration/3]

root         9        0.0  0.0        0    0        ?                         SN      Sep22   0:00     [ksoftirqd/3]

root        10       0.0  0.0        0    0        ?                         S<      Sep22    0:00     [migration/4]

上述欄位解釋:

USER 进程的属主;

PID   进程的ID;

PPID    父进程;

%CPU   进程占用的CPU百分比;

%MEM  占用内存的百分比;

NI        进程的NICE值,数值大,表示较少占用CPU时间;

VSZ     該进程使用的虚拟內存量(KB);

RSS     該進程占用的固定內存量(KB)(驻留中页的数量);

TTY     該進程在那個終端上運行(登陸者的終端位置),若與終端無關,則顯示(?)。若為pts/0等,則表示由網絡連接主機進程

WCHAN  當前進程是否正在進行,若為-表示正在進行;

START   該進程被觸發启动时间;

TIME      該进程實際使用CPU運行的时间;

COMMAND   命令的名称和参数;

STAT狀態位常見的狀態字符

D 无法中断的休眠状态(通常 IO 的进程);

R 正在运行可中在队列中可过行的;

S 处于休眠状态;

T 停止或被追踪;

W 进入内存交换  (从内核2.6开始无效);

X 死掉的进程   (基本很少見);

Z 僵尸进程;

< 优先级高的进程

N 优先级较低的进程

L 有些页被锁进内存;

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

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

+ 位于后台的进程组;

ps aux详解(进程状态说明)的更多相关文章

  1. shell中后台进程管理: ps -aux 详解

    常用 查找进程id方法:      ps -aux | grep "jupyter"                杀进程:   kill -9 具体的PID 1.ps命令 要对进 ...

  2. [转帖]ps 命令详解

    ps 命令详解 https://www.jianshu.com/p/cba22cce2f97 ps 概述 Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那 ...

  3. Linux下ps命令详解 Linux下ps命令的详细使用方法

    http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...

  4. Linux ps命令详解与示例说明

      ps:要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而ps命令就是最基本同时也是非常强大的进程查看命令.使用该命令可以确定有哪些进程正在运行和运行的状态.进程是否结 ...

  5. Linux下PS命令详解

    要对系统中进程进行监测控制,查看状态,内存,CPU的使用情况,使用命令:/bin/ps (1)         ps :是显示瞬间进程的状态,并不动态连续: (2)         top:如果想对进 ...

  6. ps命令详解(转)

    原文地址:http://apps.hi.baidu.com/share/detail/32573968 有时候系统管理员可能只关心现在系统中运行着哪些程序,而不想知道有哪些进程在运行.由于一个应用程序 ...

  7. 【linux】ps 命令详解

    [root@andon lib]# ps aux ###常用格式 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0 ...

  8. ps 命令详解

    有时候系统管理员可能只关心现在系统中运行着哪些程序,而不想知道有哪些进程在运行.由于一个应用程序可能需要启动多个进程.所以在同等情况下,进程的数 量要比程序多的多.为此从阅读方面考虑,管理员需要知道系 ...

  9. Linux PS 命令详解

    Linux操作系统PS命令详细解析 要对系统中进程进行监测控制,用 ps 命令满足你. /bin/ps ps 是显示瞬间行程的状态,并不动态连续:如果想对进程运行时间监控,应该用 top 工具. ki ...

随机推荐

  1. ORA-39095: Dump file space has been exhausted

    ORA-39095: Dump file space has been exhausted Table of Contents 1. 简述 2. 错误信息 3. 分析 4. 解决 5. 扩展 1 简述 ...

  2. c# httphelper (苏飞老师)

    /// <summary> /// 类说明:HttpHelper类,用来实现Http访问,Post或者Get方式的,直接访问,带Cookie的,带证书的等方式,可以设置代理 /// 重要提 ...

  3. 数据库字段和实体类和map中对应类型

    http://blog.csdn.net/sxe18652071425/article/details/46416217 地址 MySQL数据类型 JAVA数据类型 JDBC TYPE 普通变量类型 ...

  4. [笔记] Ubuntu机器添加新硬盘安装流程

    SSD虽然快,但是容量不够用,买了块希捷4TB的机械硬盘,准备给台机扩容. 安装环境 OS: Ubuntu 18.04 安装新硬盘 问了客服,原来这款机箱已经带了硬盘滑槽,不需要固定螺钉了. 买了SA ...

  5. python常见报错

    1.Pycharm No module named requests 的解决方法 pip install requests 然后重启pycharm

  6. UnitTest之Xunit

    Unit Test 1.建立单元测试 新建一个类库项目,在Nuget中搜索xunit,选择 xUnit.net 和 xunit.runner.visualstudio 插件包安装. xunit.run ...

  7. 7-1 shell编程基础之二

    shell编程基础之二 算数运算 bash中的算术运算:help let +, -, *, /, %取模(取余), **(乘方),乘法符号有些场景中需要转义 实现算术运算: (1) let var=算 ...

  8. 对scrapy进行单元测试 -- 使用betamax

    使用betamax进行单元测试 爬虫代码 测试代码 对于scrapy的单元测试,官方文档并没有提到,只是说有一个Contract功能.但是相信我,这个东西真的不好用,甚至scrapy的作者在一个iss ...

  9. VIM全总结

    Vim是Linux自带的编辑器,是Vi的高级版,刚开始使用我是一脸懵逼的,跟普通的编辑器完全不同,基本全靠键盘,写完之后也不知道怎么保存,特地花了点时间了解了一下,还是挺简单的.其中,主要包含三种模式 ...

  10. 用vs2008打开sln项目总是说没有对应的,打不开vs2008的工程文件提示不支持项目类型(.csproj)

    找了很多解决办法都搞不定,最后找了个老司机问了一下,原来是组件没有安装完整!!!只是安装了个vs2008的外壳...下次先检查开发工具是否完整!下载安装包安装vs再说吧!