美文网首页
Linux命令学习(2)-ps

Linux命令学习(2)-ps

作者: tarzipc | 来源:发表于2016-07-08 13:17 被阅读0次

    摘自《鸟哥的Linux私房菜》-第十七章、程序管理与 SELinux 初探

    PS(1)


    将某个时间点的程序运行情况撷取下来

    用法


    ps [opt]
     
    选项与参数:
    -A :所有的 process 均显示出来,与 -e 具有同样的效用;
    -a :不与 terminal 有关的所有 process ;
    -u :有效使用者 (effective user) 相关的 process ;
    x :通常与 a 这个参数一起使用,可列出较完整资讯。
    输出格式规划:
    l :较长、较详细的将该 PID 的的资讯列出;
    j :工作的格式 (jobs format)
    -f :做一个更为完整的输出。
     
    

    常用选项


    ps -l : 仅观察自己的 bash 相关程序

    [scu@croot ~]$ ps -l
    F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
    0 S   500  3568  3567  0  80   0 -  2861 wait   pts/0    00:00:00 bash
    0 R   500  3633  3568  0  80   0 -  2816 -      pts/0    00:00:00 ps
    
    • F:代表这个程序旗标 (process flags),说明这个程序的总结权限,常见号码有:

    • S:代表这个程序的状态 (STAT),主要的状态有:

      • R (Running):该程序正在运行中;
      • S (Sleep):该程序目前正在睡眠状态(idle),但可以被唤醒(signal)。
      • D :不可被唤醒的睡眠状态,通常这支程序可能在等待 I/O 的情况(ex>列印)
      • T :停止状态(stop),可能是在工作控制(背景暂停)或除错 (traced) 状态;
      • Z (Zombie):僵尸状态,程序已经终止但却无法被移除至内存外。
      • N (nice)低优先级任务
      • s 进程是会话期首进程
      • + 进程属于前台进程组
      • | 进程是多线程的
      • < 高优先级任务
    • UID/PID/PPID:代表『此程序被该 UID 所拥有/程序的 PID 号码/此程序的父程序 PID 号码』

    • C:代表 CPU 使用率,单位为百分比;

    • PRI/NI:Priority/Nice 的缩写,代表此程序被 CPU 所运行的优先顺序,数值越小代表该程序越快被 CPU 运行。

    • ADDR/SZ/WCHAN:都与内存有关,ADDR 是 kernel function,指出该程序在内存的哪个部分,如果是个 running 的程序,一般就会显示『 - 』 / SZ 代表此程序用掉多少内存 / WCHAN 表示目前程序是否运行中,同样的, 若为 - 表示正在运行中。

    • TTY: 登陆者的终端机位置,若为远程登陆则使用动态终端介面 (pts/n);

    • TIME:使用掉的 CPU 时间,注意,是此程序实际花费 CPU 运行的时间,而不是系统时间;

    • CMD:就是 command 的缩写,造成此程序的触发程序之命令为何。


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

    [root@croot scu]# ps aux | grep ^scu
    USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    scu       3567  0.0  0.3 100496  1860 ?        S    13:02   0:00 sshd: scu@pts/0  
    scu       3568  0.0  0.3  11444  1752 pts/0    Ss   13:02   0:00 -bash
    
    • USER:该 process 属於那个使用者帐号的?
    • PID :该 process 的程序识别码。
    • %CPU:该 process 使用掉的 CPU 资源百分比;
    • %MEM:该 process 所占用的实体内存百分比;
    • VSZ :该 process 使用掉的虚拟内存量 (Kbytes)
    • RSS :该 process 占用的固定的内存量 (Kbytes)
    • TTY :该 process 是在那个终端机上面运行,若与终端机无关则显示 ?,另外, tty1-tty6 是本机上面的登陆者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
    • STAT:该程序目前的状态,状态显示与 ps -l 的 S 旗标相同 (R/S/T/Z)
    • START:该 process 被触发启动的时间;
    • TIME :该 process 实际使用 CPU 运行的时间。
    • COMMAND:该程序的实际命令为何?

    小贴士

    僵尸程序: 应当终止运行释放内存,但却因为父程序未处理而驻扎在内存中的程序。

    相关文章

      网友评论

          本文标题:Linux命令学习(2)-ps

          本文链接:https://www.haomeiwen.com/subject/slfrjttx.html