Linux - 进程管理

本文详细介绍了Linux系统中的进程管理,包括进程的生命周期、状态,如何使用ps和top命令静态和动态查看进程,以及如何通过信号控制进程和调整进程优先级nice。此外,还提及了作业控制jobs和虚拟文件系统proc在监控系统状态中的作用。
摘要由CSDN通过智能技术生成

目录

一、进程管理

1、进程简介

(1) 什么是进程:

(2) 什么是进程的生命周期:

(3) 什么是进程状态:

2、进程管理

(1) 静态查看进程  ps aux

① 静态查看进程

② 进程排序

③ 进程的父子关系

④ 自定义显示字段

(2) 动态查看进程 top

① top 常用内部指令:

② top 技巧:

(3) 使用信号控制进程

(4) 进程优先级 nice

① 简介:

② 优先级范围和特性

③ 查看进程的nice级别

 ④ 启动具有不同 nice 级别的进程

⑤ 更改现有进程的 nice 级别

二、作业控制 jobs

三、虚拟文件系统 proc

一、进程管理

1、进程简介

(1) 什么是进程:

进程是已启动的可执行程序,有以下组成部分:

        ●已分配内存的地址空间

        ●安全属性(所有权凭据和特权)

        ●程序代码的一个或多个执行线程

        ●进程状态

(2) 什么是进程的生命周期:

进程的生命周期是指一个进程从创建终止所经历的不同状态和阶段。父进程复制自己的地址空间(fork)创建一个新的子进程结构,具备一定的父级资源,直到运行完毕,退出系统。

(3) 什么是进程状态:

R - run:表示进程正在运行或处于就绪状态。

T - stop:表示进程被暂停或停止。

S - sleep:表示进程正在睡眠或等待某个特定的事件发生。

Z - zombie:已经终止但尚未被其父进程回收的进程。

2、进程管理

(1) 静态查看进程  ps aux

① 静态查看进程

命令参数说明:

ps a (all):显示现行终端机下的所有程序

ps u (user):以用户为主的格式来显示程序状况

ps x:列出当前用户正在运行的进程,而不仅限于在终端中执行的进程

进程字段含义:

USER:运行进程的用户

PID:进程ID (唯一,管理员可通过进程 ID 结束进程)

%CPU:占用cpu

%MEM:占用内存

TTY:进程运行的终端

STAT:进程状态

START:进程启动的时间

TIME:进程占用 CPU 的时间

COMMAND:进程文件、进程名

② 进程排序

语法:ps aux --sort + 列名

例:以CPU占比排列(减号表示降序排列)

ps aux --sort %cpu

ps aux --sort -%cpu

③ 进程的父子关系

语法:ps -ef

PID:程序号

PPID:父系程序号

如果有程序无法结束,可以结束它的父系程序从而结束该程序

④ 自定义显示字段

语法:px axo + 字段名

(2) 动态查看进程 top

ps 无法实时查看进程信息,而 top 可以实现实时查看进程的信息

第一行:程序名,系统时间,CPU 占用率

第二行:任务数

第三行:CPU占用率

第四行:内存空间

第五行:交换分区(存放常用数据)

① top 常用内部指令:

M:按内存的使用排序

C:按CPU使用排序

N:按PID大小排序

<:向前翻

>:向后翻

z:设置彩色

② top 技巧:

top -d +数字:设置刷新时间(例:top -d 3 每三秒刷新一次)

top -p +进程号:查看指定进程

(3) 使用信号控制进程

kill -l :列出所有支持的信号

1) SIGNUP:重新加载配置(kill -1 + PID)

2) SIGINT:键盘中断(Ctrl + C)

3) SIGQUIT:键盘退出(Ctrl + \)

9)SIGNKILL:强制终止

15)SIGTERM:正常终止

 创建两个文件,并在不同的终端打开文件

发送信号15 和信号 9,观察两个终端程序状况

(4) 进程优先级 nice

① 简介:

系统中的两个优先级:在 top 中显示的优先级有两个,PR 值和 nice 值

NI:实际 nice 值

PR(+20):将nice级别显示为映射到更大优先级队列,-20映射到0,+19映射到39(可调整的范围:-20 到 39)

② 优先级范围和特性

nice 值越大:表示优先级越低,例如 +19

nice 值越小:表示优先级越高,例如 -20

③ 查看进程的nice级别

命令:ps axo pid,command,nice --sort=- nice

 ④ 启动具有不同 nice 级别的进程

默认情况下启动进程时,通常会继承父进程的 nice 级别,默认为0

⑤ 更改现有进程的 nice 级别

 修改nice值:renice

PR 是在系统中的优先级 ;NI 是手动调整的优先级。

二、作业控制 jobs

一个命令行功能,也叫后台运行。

foreground(fg):前台进程,在终端中运行的命令。占领终端。

background(bg):后台进程,没有控制终端。

运行后台程序:&(把命令放到后台,不占领终端)

fg + 序号 :将进程调到前台

消灭后台进程:kill + %

kill 1 和 kill %1 的区别:前者终止 PID 为 1 的进程;后者杀死作业序号为 1 的后台程序。

三、虚拟文件系统 proc

虚拟文件系统:采集服务器自身内核、进程运行的状态信息

查看 CPU 信息:/proc/cpuinfo

查看内存信息:/proc/meminfo

查看内核信息:/proc/cmdline

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值