Linux的进程管理
1、Linux进程的相关概念
1.1、进程的类型
-
前台进程

- 前台进程就是具有终端可以和用户交互的进程
-
后台进程
- 与前台进程相对,没有占用终端的就是后台进程
- 后台程序基本上不和用户交互,优先级比前台进程低
- 将需要执行的命令以
&符号结束 - 使用
jobs可以查看后台进程
-
守护进程
- 守护进程(
daemon)是特殊的后台进程 - 很多守护进程在系统引导的时候启动,一直运行直到系统关闭
- Linux有很多典型的守护进程

- 进程名字以“d”结尾的一般都是守护进程
- 守护进程(
1.2、进程的标记
1.2.1、进程ID(Process ID)
top:查看所有的进程- 进程ID是进程的唯一标记,每个进程拥有不同的ID
- 进程ID表现为一个非负整数,最大值由操作系统限定

- 父子进程关系可以通过pstree命令查看
- ID为0的进程为idle进程,是系统创建的第一个进程
- ID为1的进程为init进程,是0号进程的子进程,完成系统初始化
- Init进程是所有用户进程的祖先进程
1.2.2、进程的状态标记
man ps
| 状态符号 | 状态说明 |
|---|---|
| ==R== | ==(TASK_RUNNING),进程正处于运行状态== |
| ==S== | ==(TASK_INTERRUPTIBLE),进程正处于睡眠状态== |
| D | (TASK_UNINTERRUPTIBLE)进程正处于IO等待的睡眠状态 |
| T | (TASK_STOPPED)进程正处于暂停状态 |
| Z | (TASK_DEAD or EXIT_ZOMBIE)进程正处于退出状态或僵尸进程 |

2、操作Linux进程的相关命令
2.1、ps命令
-
ps命令常用于显示当前进程的状态
-
ps命令常配合aux参数或ef参数和grep命令检索特定的进程
-
ps -
ps -aux:打印所有进程的详细信息 -
ps -u root: 查看root用户的进程 -
ps -ef --forest:可以打印进程的父子状态 -
ps -aux --sort=-pcpu:按照CPU的使用频率来排序 -
ps -aux --sort=-pmem:按照内存的使用情况来排序
2.2、top命令

PID:进程IDUSER:进程的用户PR:进程的优先级NI:VIRT:进程的虚拟内存RES:SHR:S:进程状态%CPU:进程所使用的CPU%MEM:进程所使用的的内存TIME+:进程运行的时间COMMAND:进程的命令

total:所有的内存free:空闲的内存used:已经使用的内存buffer/cache:已经被缓存起来的内存(指的是高速缓存器吗)
2.3、kill命令
kill -9:kill给进程发送信号,9的意思是让指定进程无条件的停止下来
kill命令发送指定信号给进程kill -l可以查看操作系统支持的信号
==只有(SIGKILL 9)信号可以无条件终止进程,其他信号进程有权忽略==
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员小航
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果





