美文网首页
进程的查看

进程的查看

作者: 柚子伴酒X | 来源:发表于2018-12-08 12:01 被阅读0次

    静态查看进程

    1、ps:是监视系统进程的主要工具,显示的是瞬时的进程状况

    ps -elf 可以显示 uid ppid
    ps aux BSD
    -e:显示所有进程
    -f:全格式显示
    a:显示所有进程(包含其他用户的进程)
    u:显示进程的拥有者
    x:和a一起使用,显示所有进程(包含无控制终端的进程) TTY为?的进程
    -l:显示更多的信息 (PRI 优先级)
    -o:自定义显示结果(默认情况只显示前台进程)
    eg: ps -axo uid,pid,ppid
    /proc


    image.png

    进程的拥有者 进程号 父进程号 cpu使用的资源百分比 开始时间 运行进程的终端名字 进程运行的时间 命令
    pts:伪终端、虚拟终端
    tty1--tty6: 字符终端


    image.png

    拥有者 进程号 占用cpu百分比 占用内存百分比 占用的虚拟内存的大小VSZ 驻留内存大小RSS 终端 进程状态STAT 开始时间 START 运行时间(占用cpu的时间) 命令
    STAT:进程状态
    R:该进程正在运行或就绪
    S:休眠进程
    Z:僵尸进程,实际上该进程已经终止,但是它的父进程却无法正常终止它,造成僵尸进程的状态
    T:该进程正在跟踪或者已经停止

    2、pstree:以树形显示正在运行的进程

    image.png

    systemd是所有进程的父进程
    el6为init

    top:实时查看系统运行状态

    image.png

    统计信息区(共五行):
    第一行: 当前系统时间 系统运行时间 , 当前登录用户数, 系统平均负载: 1分钟,5分钟,15分钟
    第二行: 任务(进程): 总数, 正在运行的, 休眠的, 停止的, 僵尸
    第三行: cpu状态(%): 用户空间us, 内核空间sy, 改变过优先级的ni, 空闲的id, IO等待的wa, 硬中断hi, 软中断si, 虚拟机st
    第四行: 内存状态(K): 总量, 空闲的, 使用中的, 缓存的
    第五行: swap状态(K): 总量, 空闲的, 使用中的, 缓冲的

    进程信息区:
    PID — 进程id
    USER — 进程所有者
    PR — 进程优先级
    NI — nice值。负值表示高优先级,正值表示低优先级
    VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
    RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
    SHR — 共享内存大小,单位kb
    S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
    Ss s进程的领导者,父进程
    S< <优先级较高的进程
    SN N优先级较低的进程
    R+ +表示是前台的进程组
    Sl 以线程的方式运行
    %CPU — 上次更新到现在的CPU时间占用百分比
    %MEM — 进程使用的物理内存百分比
    TIME+ — 进程使用的CPU时间总计,单位1/100秒
    COMMAND — 进程名称(命令名/命令行)


    序号  列名          含义
    a       PID            进程id
    b       PPID          父进程id
    c       RUSER       Real user name
    d       UID           进程所有者的用户id
    e       USER        进程所有者的用户名
    f       GROUP      进程所有者的组名
    g       TTY          启动进程的终端名。不是从终端启动的进程则显示为 ?
    h       PR            优先级
    i       NI              nice值。负值表示高优先级,正值表示低优先级
    j       P               最后使用的CPU,仅在多CPU环境下有意义
    k       %CPU       上次更新到现在的CPU时间占用百分比
    l       TIME          进程使用的CPU时间总计,单位秒
    m     TIME+        进程使用的CPU时间总计,单位1/100秒
    n       %MEM      进程使用的物理内存百分比
    o       VIRT         进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
    p       SWAP       进程使用的虚拟内存中,被换出的大小,单位kb。
    q       RES          进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
    r       CODE        可执行代码占用的物理内存大小,单位kb
    s       DATA        可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
    t       SHR          共享内存大小,单位kb
    u       nFLT        页面错误次数
    v       nDRT        最后一次写入到现在,被修改过的页面数。
    w       S             进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
    x       COMMAND 命令名/命令行
    y       WCHAN     若该进程在睡眠,则显示睡眠中的系统函数名
    z       Flags         任务标志
    

    top操作:
    1 -- 展开cpu信息
    f -- 更改显示内容
    M -- 根据驻留内存大小进行排序
    P -- 根据CPU使用百分比大小进行排序
    q -- 退出
    Fields 字段/列

    进程的前后台调度

    1、前台运行:

        # firefox 192.168.1.250
       会发现该程序一直占用终端,其他命令不能够再在这个终端运行
    

    2、后台运行

    1)命令执行的时候,直接将其放置于后台运行
        # firefox 192.168.1.250 &
            [1] 6222
         后台运行不会占用执行命令的终端,用户仍然可以使用这个终端做操作
    2)对于一个已经运行的命令,如何将其放置于后台 ctrl+z
        # firefox 192.168.1.250
        [1]   Done                    firefox 192.168.1.250    
        [2]+  Stopped                 firefox 192.168.1.250
        ctrl+z将前台进程放置于后台,但是该进程在后台是停止的状态
        # jobs     //查看后台进程运行状态
            [2]+  Stopped                 firefox 192.168.1.250
        # bg 2     //激活后台进程
            [2]+ firefox 192.168.1.250 &
        # jobs
            [2]+  Running                 firefox 192.168.1.250 &
    
     bg 任务编号  : 指定任务在后台运行
     fg 任务编号   : 将后台运行的命令变成前台运行
            # fg 2
                firefox 192.168.1.250
    

    注意:不管你是前台运行,还是后台运行,只要终端一关闭,进程就停止了。
    那么如何让一个命令或者程序脱离终端?
    使用nohup命令。
    # nohup firefox 192.168.1.250 &
    [1] 6537
    # nohup: ignoring input and appending output to `nohup.out' //按回车

    进程的终止

    如何终止一个进程呢?

    1. 前台正在执行的命令: ctrl+c

    2. kill,killall等命令

    kill通过传递信号给进程来执行相应的操作.
    查看信号的列表
    # kill -l
    常用的信号:
    1) SIGHUP:重置进程的配置,即不停止服务的情况下,重新读取配置文件 重载
    kill -1 PID 或者kill -HUP PID
    2) SIGINT:中断(interrupt),ctrl+c
    9) SIGKILL:强制杀死进程
    15) SIGTERM:正常终止进程,此信号为kill默认
    18) SIGCONT: 继续,和20相反,bg
    20) SIGTSTP:暂停,ctrl+z

    pkill:按照进程的属性结束进程
        按照进程名字杀死进程
        # pkill firefox  
        按照用户名杀死进程
        # su - test
        [test@clone1 ~]$ vim /etc/passwd
        # pkill -U test   
    
    killall:
        killall 命令名字    //杀死全部的同名进程    
        
    xkill:杀死图形化资源
        当执行了xkill之后,鼠标会变成“x”形,点到任何图形资源,就会终止该资源的运行
    

    进程的nice值

    谦让值:nice 
        作用:指定或者调整用户进程的nice值
                nice值越高,该进程抢占资源的能力越弱
                nice值越低,该进程抢占资源的能力越强
           范围:-20~19
    

    相关命令

        nice  -- 运行时直接设置nice值
            用法: nice -n 数字 command
            
        renice  -- 对于已经运行的,调整nice值
            用法: renice 数字 PID
    

    相关文章

      网友评论

          本文标题:进程的查看

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