MENU

Linux笔记07-进程与服务管理

• 2019 年 03 月 01 日 • 50 人围观 • 笔记

1. Linux进程的运行状态

  • 可运行状态R

处于这种状态的进程,要么正在运行,要么正准备运行。也就是说,理论上处于运行态和就绪态的进程,在Linux中都被视作可运行态。

  • 可中断的准备状态S

这类进程处于阻塞状态,一旦达到某种条件,就会变为就绪态

  • 不可中断的准备状态D

与“可中断的等待状态”含义基本类似,唯一不同的是处于这种状态的进程对中断信号不做响应。比如某个进程正在从硬盘向内存中读入大量数据时就会处于这种状态

  • 僵死状态Z

正常情况下,子程序应该由父程序结束,并释放其所占用的系统资源。当某个进程已经运行结束,但它的父进程还没有释放其系统资源时,这个进程就会处于僵死态

  • 暂停状态T

此时的进程暂停与内存中,但不会被调度,等待接受某种特殊处理

2.进程的属性

在进程启动后,操作系统就为每个进程分配一个唯一的进程标识符,称为进程的ID(PID)

使用pidof命令查询某个指定服务的进程PID

pidof 进程名称

systemd进程的PID固定为1,其他所有的进程PID不固定

进程的其他属性:

  • 父进程的ID(PPID)
  • 启动进程的用户ID(UID)和所属组的ID(GID)
  • 进程的状态
  • 进程执行的优先级
  • 进程所连接的终端名
  • 进程资源占用:进程占用资源的大小,如占用内存、CPU的情况等

3.进程的分类

按照进程的功能和运行的程序不同,分为

  • 系统进程:可以执行内存资源分配和进程切换等工作,这些进程的运行不受用户的干预,即使是root用户也不能干预系统进程的运行
  • 用户进程:通过执行用户程序、应用程序或内核之外的系统程序而产生的进程,此类进程可以在用户的控制下运行或关闭

针对用户进程分为

  • 交互进程:由Shell启动的进程,即在终端输入命令启动的进程。交互进程既可以在前台运行,也可以在后台运行。
  • 守护进程:一般在后台运行,通常是Linux系统启动的同时启动,在系统关闭的同时终止。由于守护进程是一直运行着的,一般所处的状态是等待处理请求任务

4.查看进程状态

1.进程终端

直接进行ps命令,将只显示当前用户在当前终端所启动的进程

ps命令选项分为BSD和SystemdV两种不同风格,其中BSD风格选项之前不需要“-”,而SystemdV风格的选项之前必须要使用“-”

1.以BSD风格查看进程的详细信息

选项的含义:

  • a,显示与当前终端有关的所有进程,包括其他用户的进程
  • x,显示与当前进程无关的所有进程,a和x一起使用就是显示系统中的所有进程了
  • u,以面向用户的格式显示进程信息(包括用户名,CPU使用的情况等)

主要输出项说明:

  • USER:进程的所有者,既启动进程的用户名
  • %CPU:进程的CPU占用率
  • %MEM:进程的内存占用率
  • VSZ:进程占用的虚拟内存的大小,单位KB
  • RSS:进程常驻内存集的大小,单位KB
  • TTY:启动进程的终端。“?”表示该进程由系统启动
  • STAT:进程的状态。绝大多数的进程都处于S可中断的等待状态,另外还有很多辅助的表示进程状态的符号,例如

    • +:表示前台进程
    • l:表示多线程进程
    • N:表示低优先级进程
    • <:表示高优先级进程
    • s表示该进程是会话领导者,如果把这样的进程关闭,那么由该进程派生的子进程也都关闭
  • START:进程的开始时间
  • TIME:进程从启动以来占用CPU的总时间
  • COMMAND:启动该进程的命令名称,如果命令名称带有方括号[],表示该进程由系统启动
2.以SystemdV风格查看所有进程的详细信息

选项的含义:

  • -e:显示系统中所有进程的信息
  • -f:显示进程的所有信息

版权属于:LeeYD · Blog
本文标题:Linux笔记07-进程与服务管理
本文链接:https://www.leeyiding.com/archives/16/
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 4.0 许可协议
若转载本文,请标明出处并告知本人

最后编辑于: 2020 年 01 月 18 日
返回文章列表 文章二维码 打赏
本页链接的二维码
打赏二维码