zoukankan      html  css  js  c++  java
  • CentOS 查看进程状态

    Linux中ps与top命令
     
    ============================================================================
    这两个命令都是查看系统进程信息的命令,但是用处有点儿不同
    1.ps命令--提供系统过去信息的一次性快照
    也就是说ps命令能够查看刚刚系统的进程信息  命令:ps aux或者ps lax
    [root@Linux ~]# ps aux
    USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root         1  0.1  0.1   2032   644 ?        Ss   21:55   0:01 init [3]
    root         2  0.0  0.0      0     0 ?        S    21:55   0:00 [migration/0]
    root         3  0.0  0.0      0     0 ?        SN   21:55   0:00 [ksoftirqd/0]
    ......
    解释如下:
    VSZ--进程的虚拟大小
    RSS--驻留集的大小,可以理解为内存中页的数量
    TTY--控制终端的ID
    STAT--也就是当前进程的状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
    START--这个很简单,就是该进程启动的时间
    TIME--进程已经消耗的CPU时间,注意是消耗CPU的时间
    COMMOND--命令的名称和参数
    而]#ps lax  可以看到父进程,谦让值以及该进程正在等待的资源等待
     
    2.top命令- top命令反应的是系统进程动态信息,默认10s更新一次
    [root@Linux ~]#top
    top - 22:30:58 up 35 min,  1 user,  load average: 0.12, 0.07, 0.08
    Tasks:  72 total,   1 running,  71 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.2%us,  0.2%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:    373320k total,    88600k used,   284720k free,     9956k buffers
    Swap:   514072k total,        0k used,   514072k free,    45092k cached
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
     3217 root      15   0  2160  976  788 R    1  0.3   0:00.07 top
        1 root      15   0  2032  644  552 S    0  0.2   0:01.55 init
        2 root      RT   0     0    0    0 S    0  0.0   0:00.02 migration/0
        3 root      34  19     0    0    0 S    0  0.0   0:00.00 ksoftirqd/0
        4 root      RT   0     0    0    0 S    0  0.0   0:00.00 watchdog/0
        5 root      RT   0     0    0    0 S    0  0.0   0:00.02 migration/1
        6 root      39  19     0    0    0 S    0  0.0   0:00.00 ksoftirqd/1
        7 root      RT   0     0    0    0 S    0  0.0   0:00.00 watchdog/1
     
    解释如下

    PID:进程ID,进程的唯一标识符

    USER:进程所有者的实际用户名。

    PR:进程的调度优先级。这个字段的一些值是'rt'。这意味这这些进程运行在实时态。

    NI:进程的nice值(优先级)。越小的值意味着越高的优先级。负值表示高优先级,正值表示低优先级

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

    RES:驻留内存大小。驻留内存是任务使用的非交换物理内存大小。进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

    SHR:SHR是进程使用的共享内存。共享内存大小,单位kb

    S:这个是进程的状态。它有以下不同的值:

    • D - 不可中断的睡眠态。
    • R – 运行态
    • S – 睡眠态
    • T – 被跟踪或已停止
    • Z – 僵尸态

    %CPU:自从上一次更新时到现在任务所使用的CPU时间百分比。

    %MEM:进程使用的可用物理内存百分比。

    TIME+:任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。

    COMMAND:运行进程所使用的命令。进程名称(命令名/命令行)

    以上就是top命令的部分输出,可以看到该命令显示了较为详细的信息
    顶部始终显示的是系统当前最活跃的进程,此时还可以接受用户的键盘输入向进程发送信号等待
    TOP 功能键:
    s – 改变画面更新频率
    l – 关闭或开启第一部分第一行 top 信息的表示
    t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
    m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
    N – 以 PID 的大小的顺序排列表示进程列表
    P – 以 CPU 占用率大小的顺序排列进程列表
    M – 以内存占用率大小的顺序排列进程列表
    h – 显示帮助
    n – 设置在进程列表所显示进程的数量
    q – 退出 top
    s – 改变画面更新周期
    3.ps和top都是从/proc目录下读取进程的状态信息,内核把当前系统进程的各种有用信息都放在这个伪目录下。
     
    ============================================================================
     
    ps -ef 与 ps aux
     
    • 第一点 
      -ef是System V展示风格,而aux是BSD风格。 

      字段含义: 
      USER:用户名称 
      PID:进程号 
      %CPU:进程占用CPU的百分比 
      %MEM:进程占用物理内存的百分比 
      VSZ:进程占用的虚拟内存大小(单位:KB) 
      RSS:进程占用的物理内存大小(单位:KB) 
      TT:终端名称(缩写),若为?,则代表此进程与终端无关,因为它们是由系统启动的 
      STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等 
      STARTED:进程的启动时间 
      TIME:CPU时间,即进程使用CPU的总时间 
      COMMAND:启动进程所用的命令和参数,如果过长会被截断显示 


    • 字段含义: 
      UID:用户ID 
      PID:进程ID 
      PPID:父进程ID 
      C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高 
      STIME:进程启动的时间 
      TTY:完整的终端名称 
      TIME:CPU时间 
      CMD:完整的启动进程所用的命令和参数

    • 第二点 
      COMMADN列如果过长,aux会截断显示,而ef不会

    综上: 
    如果想查看进程的CPU占用率和内存占用率,可以使用aux 
    如果想查看进程的父进程ID和完整的COMMAND命令,可以使用ef

  • 相关阅读:
    登录注册页面切换
    LINUX系统日常使用命令
    find命令详解
    ssh命令详解
    tar命令详解
    route命令详解
    uname命令详解
    ps命令详解
    df命令详解
    virsh命令详解
  • 原文地址:https://www.cnblogs.com/tudachui/p/9516009.html
Copyright © 2011-2022 走看看