一文教你了解Linux进程管理

举报
神的孩子在歌唱 发表于 2022/01/27 23:52:33 2022/01/27
【摘要】 一. 什么是进程和程序进程:开始执行但是还没有结束的程序的实例程序:包含可执行代码的文件进程与程序的关系进程由程序产生,是一个运行着的、要占系统资源的程序进程不等于程序进程与程序是 多对一进程是占用(消耗)系统资源的 二. 查看进程——ps,top,pstree查看进程有三个命令命令功能ps显示进程信息top显示进程状态pstree显示系统进程树接下来我们一一介绍:ps命令:显示某时刻系统...

一. 什么是进程和程序

  1. 进程:开始执行但是还没有结束的程序的实例

  2. 程序:包含可执行代码的文件

  3. 进程与程序的关系

  • 进程由程序产生,是一个运行着的、要占系统资源的程序
  • 进程不等于程序
  • 进程与程序是 多对一
  • 进程是占用(消耗)系统资源的

二. 查看进程——ps,top,pstree

查看进程有三个命令

命令 功能
ps 显示进程信息
top 显示进程状态
pstree 显示系统进程树

接下来我们一一介绍:

  1. ps命令:显示某时刻系统进程的状态信息
    常用选项:

a —显示现行终端机下的所有进程,包括其他用户的进程。
u —以用户为主的格式来显示进程状况。
x —显示所有进程,不以终端机来区分。

在这里插入图片描述

  • USER: 进程拥有者
  • PID:pid
  • %CPU:占用的cpu使用率
  • VSZ:占用的内存使用率
  • RSS:是实际物理内存
  • TTY:进程的控制终端
  • STAT:程序的状态,R:正在执行中,S:睡眠,T:正
  • 在检测或者停止,Z:僵尸进程,< 高 优先级,N 低优先级,L 有些页被锁进内存,s 包含子进程,+ 位于后台的进程组;l 多线程,克隆线程
  • START:程序开始时间
  • TIME:程序运行的时间 COMMAND:所执行的指令。
  1. top命令:动态显示进程状态

top命令以全屏幕的方式显示系统中的进程状态,并定时刷新显示的内容

在这里插入图片描述
介绍
在这里插入图片描述

  • 第一行:显示系统已启动的时间、目前上线人数、系统整体的负载(load)。 比较需要注意的 是系统的负载,三个数据分别代表 1, 5, 10分钟的平均负载。 一般来说,这个负载值应该 不太可能超过 1 才对,除非您的系统很忙碌。 如果持续高于 5 的话,那么…仔细的看看到底是那个程序在影响整体系统吧!
  • 第二行:显示的是目前的观察程序数量,
  • 第三行:显示的是 CPU 的整体负载,每个项目可使用 ? 查阅。需要观察的是 id (idle) 的数 值,一般来说,他应该要接近 100% 才好,表示系统很少资源被使用啊!
  • 第四行与第五行:表示目前的物理内存与虚拟内存 (Mem/Swap) 的使用情况。
  • 第六行:这个是当在 top程序当中输入指令时,显示状态的地方。

在这里插入图片描述

  • PID :每个 process 的 ID 啦!
  • USER:该 process 所属的使用者;
  • PR :Priority 的简写,程序的优先执行顺序,越小越早被执行;
  • NI :Nice 的简写,与 Priority 有关,也是越小越早被执行;
  • %CPU:CPU 的使用率;
  • %MEM:内存的使用率;
  • TIME+:CPU 使用时间的累加;
  • SHR:共享内存大小,单位kb
  • RES:进程使用的、未被换出的物理内存大小,单位kb
  1. pstree命令:显示系统进程树
    pstree命令以树的形式显示系统进程间的父子关系
    需要安装psmisc软件包

在这里插入图片描述

三. 进程的启动方式

  1. 手工启动
  • 由用户输入命令,直接执行一个程序
  • 前台启动是普通的命令执行方式
  • 后台启动需要在命令尾加入“&”
  • # cp /dev/cdrom mycd.iso &
  1. 调度启动
  • 使用at命令设置某个命令在某个时间,一次性的在系统中执行
  • crontab命令设置在系统中需要周期性(如每天、每周等)完成的任务

四.进程的控制

(1)把当前终端中运行的进程调入后台

使用“Ctrl+z”组合键可以将当前终端的进程调入后台并停止执行

(2)查看后台的进程

jobs命令用于查看当前终端中后台的所有进程的状态

列:top到后台运行(【1】:是序号)

$ jobs
 [1]+ Stopped top

(3)将后台的进程恢复到前台运行

fg命令用于将后台的进程调入终端前台执行

$ fg 1

kill命令:终止正在执行的命令
使用“Ctrl + c”组合键可以强制结束当前终端中运行的命令

在这里插入图片描述

五.实训任务

  1. 利用cp命令将光盘内容拷贝到home目录下,制作一个镜像文件a.iso,由于制作时间较长,请后台运行此命令。
  2. 查看后台运行的命令,获取进程号。
  3. 杀掉后台运行的命令。

请给我点个赞鼓励我吧
在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。