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. Torvalds的linux

    1991年,芬兰人林纳斯•托瓦兹在赫尔辛基大学上学,对操作系统很好奇,并且对MINIX只允许在教育上使用很不满(其不允许任何商业使用),于是开始写他自己的操作系统,这就是后来的Linux内核. 199 ...

  2. TortoiseSvn客户端介绍

    TortoiseSVN 是svn版本控制系统的一个免费开源客户端,它是svn版本控制的 Windows 扩展.可以使你避免使用枯燥而且不方便的命令行.它完全嵌入 Windows Explorer,使用 ...

  3. EvenBus源码分析

    概述 一般使用EventBus的组件类,类似下面这种方式: public class SampleComponent extends Fragment { @Override public void ...

  4. matplotlib之条形图

    1.知识点 1.plt.figure(figsize=(20,8),dpi=80)设置图像大小,主要参数为figsize(a,b) 2.plt.barh(range(len(a)),b,height= ...

  5. c# 匿名类型获取值

    代码片段: 读取 new{ ....} 方法1:转换为json对象 dynamic model = SaleOrderServices.GetGiftOrderById(WebHelper.GetQu ...

  6. java.lang.Double[] 转 double[]

    Double[] v = list.stream().map(item -> item.getRespTime()).toArray(Double[]::new); Mean mean = ne ...

  7. 如何从项目中移除CocoaPods

    一.项目Show in Finder: 删除本地文件(Podfile.Podfile.lock.Pods文件夹) 删除本地生成的xcworkspace文件 打开项目,在Frameworks文件夹下,删 ...

  8. .net core中读取配置文件

    1)先看丑陋的方法 读取 appsettings.json   然后在 Startup 的 ConfigureServices() 方法中进行注入: public IConfigurationRoot ...

  9. shaderToy学习篇

    觉得shadertoy上的一些网友的作品写得很好,加上自己对glsl一些内置函数,内置变量不是很熟悉,于是决定开始学习一下上面一些大佬的代码. 今天的案例是这个: 附上shaderToy的地址:htt ...

  10. 【机器学习】Jackknife,Bootstraping, bagging, boosting, AdaBoosting, Rand forest 和 gradient boosting

    Jackknife,Bootstraping, bagging, boosting, AdaBoosting, Rand forest 和 gradient boosting 这些术语,我经常搞混淆, ...