Linux 7.6

第九章:Linux的系统进程


文章目录

  • Linux 7.6
  • 一.进程信息
  • 二.后台进程
  • 三.杀死进程



一.进程信息

  • 在Windows中可以在任务管理器中查看到进程和后台进程的信息。

linux 进程id对应的容器 linux如何查看进程id号_linux 进程id对应的容器

  • 在Linux中同样有着以文件形式存在的进程
  • ps 命令: 用于展示当前时刻的系统进程信息,是静态的。
ps -ef//简洁查看进程信息

linux 进程id对应的容器 linux如何查看进程id号_虚拟内存_02

  • 字符含义
  • UID(User ID)所属用户
  • PID(Process ID)当前进程编号
  • PPID(Parent Process ID)当前进程编号的父进程编号
  • CMD(Command)进程文件

一般比较常用的就是将查看进程的命令与搜索命令结合起来,就可以查找到具体的进程。

ps -ef | grep 命令//过滤只查看某个进程信息

linux 进程id对应的容器 linux如何查看进程id号_学习_03


linux 进程id对应的容器 linux如何查看进程id号_linux_04


通过追朔父进程编号,可以一级级往上找到对应的文件,最终是编号0,代表的是Linux启动时的开启的引导分区。

ps -aux//所有信息
ps -aux | less//分页查看
//ctrl + F - 向前移动一屏
//ctrl + B - 向后移动一屏
//ctrl + D - 向前移动半屏
//ctrl + U - 向后移动半屏

linux 进程id对应的容器 linux如何查看进程id号_linux 进程id对应的容器_05

  • 字符含义
  • USER : 进程运行的所有者
  • PID :进程编号
  • %CPU :进程占用cpu时间的百分比
  • %MEM :进程占内存的百分比
  • VSZ : 所占虚拟内存大小
  • RSS : 驻留内存 ----- 通常看这个指标
  • TTY : 进程运行的终端
  • STAT : 进程状态
  • 一级状态:
  • R 运行
  • S 可中断睡眠
  • D 不可中断睡眠—如:IO操作
  • T 停止
  • Z 僵尸线程—等待父线程收回
  • X 死亡线程
  • 二级状态:
  • s 进程的领导者,父进程
  • < 优先级较高的进程
  • N 优先级较低的进程
  • + 前台的进程组
  • l 多线程方式运行的进程
  • START : 进程的启动时间
  • TIME : 进程占用CPU的总时间
  • COMMAND : 进程文件、进程名
ps aux --sort //按某个字段排序查看
ps aux --sort %cpu//按占用cpu百分比升序排序
ps aux --sort -%cpu//按占用cpu百分比降序排序
ps axo user,pid,%cpu//查看自定义字段(这里查看user。pid,%cpu)
ps axo user,pid,%cpu --sort -%cpu | less//组合起来使用就是分页按照cpu降序排列,只查看user。pid,%cpu的信息
  • top
  • 当前服务器内存使用率
  • 常在性能测试时,通常用top命令观察cpu、内存使用情况
  • 进入linux系统,输入top,按1,可监控每个逻辑cpu情况
top -p 进程ID//查看指定进程id的top信息
top -H -p 进程ID//查看指定进程id的所有线程的top信息

linux 进程id对应的容器 linux如何查看进程id号_学习_06

  • 参数详解
  • 第一行:系统运行信息
  • 当前时间
  • 运行时长
  • 当前登录的用户数
  • 系统平均负载压力情况(1min的平均负载压力、5min的平均负载压力、15min的平均负载压力)
    注:load average:每隔5s检查一次活跃的进程数,然后按特定算法计算出来的。一般当这个数值除以CPU的核数得到的值大于3~5时,就标明系统的负载压力已经很高了。
  • 第二行:任务信息
  • 总进程数
  • 正在执行的进程
  • 正在休眠的进程
  • 停止运行的进程
  • 假死的进程
  • 第三行:CPU运行信息
  • us表示用户模式下CPU占比(%)
  • sy标识系统模式下CPU占比(%)
  • ni表示改变过优先级的进程的CPU占比(%)
  • id表示空闲状态的CPU占比(%)
  • wa表示因为I/O等待造成的CPU占用比(%)
  • st表示CPU等待虚拟机调度的时间占比,这个指标一般在虚拟机中才有,在物理机中该值一般为0
  • 理论上讲逻辑cpu的us之和+sy之和≈%CPU,实际会有偏差
  • 第四行:内存信息
  • total:物理内存总量(kb)
  • used:已使用的物理内存(kb)
  • free:空闲物理内存(kb)
  • buff/cache :缓存内存大小(kb)
  • 第五行:虚拟内存使用信息
  • total :虚拟内存空间总大小(kb)
  • used :表示虚拟内存使用大小(kb)
  • free :表示空闲虚拟内存(kb)
  • avail Mem:表示缓存虚拟内存(kb)
  • 第六行:参数意思如下
  • PID:进程编号
  • USER:进程的持有用户
  • PR:进程运行的优先级,值越小优先级越高,会越早获取CPU的执行权
  • NI:进程的nice值,表示进程可被执行的优先级的修正数值
  • VIRT:进程使用虚拟内存,单位kb
  • RES:常驻内存,单位kb
  • SHR:进程使用的共享内存,单位kb
  • S:进程运行状态。(S:休眠;D:不可中断睡眠;R:运行中;T:跟踪/停止;Z:假死中)
  • %CPU:进行运行时CPU的占用比
  • %MEM:进程使用的内存占用比
  • TIME+:进程占用的CPU总时长
  • COMMAND:进程名

二.后台进程

  • 无法在操作页面显示后台信息的进程就是后台进程

linux 进程id对应的容器 linux如何查看进程id号_虚拟内存_07

  • 只需要在命令的后面添加一个&符号
ping www.baidu.com >> baidu &

linux 进程id对应的容器 linux如何查看进程id号_学习_08

  • jobs
jobs -l//加参数-l可以显示进程号
  • 可以查看当前的后台进程
  • 但是只有当前用户界面可以获取到

linux 进程id对应的容器 linux如何查看进程id号_linux_09

  • nohup 可以防止后台进程被挂起
nohup ping www.baidu.com >> baidu 2>&1 &//后台进程有时可能会输出错误信息,所以需要加上2>&1来打印所有信息

linux 进程id对应的容器 linux如何查看进程id号_linux 进程id对应的容器_10

三.杀死进程

kill -9 进程编号(PID)//进程编号对应的文件也会被删除

linux 进程id对应的容器 linux如何查看进程id号_运维_11