linux 进程管理
1. 为什么要引入进程
主要是为了提高CPU利用率,人们设计了在一台计算机实现能将多个程序同时加载、并发执行,从而引入进程的概念。
- 每个加载到内存中的程序都称为进程,操作系统管理者多个进程并发执行。
- 进程会认为自己独立占用CPU资源
2. 进程的概念
2.1 进程的定义
进程是指一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程
进程包含了正在运行的一个程序的所有的状态的信息,其主要包括以下
- 代码
- 数据
- 状态寄存器,例如CPU的状态,栈指针,PC指针等
- 通用寄存器
- 进程占用系统资源,打开文件,已分配的内存信息等
2.2 进程的特点
1.动态性:可以动态创建、结束进程
2.并发性:进程可以被独立调度并占用处理器运行
3.独立性:不同进程的工作不相互影响
4.制约性:因访问共享数据/资源或进程间同步而产生制约
2.3 进程与程序的区别
1.进程是动态的,程序是静态的;程序是有序代码的集合,进程是程序的执行,进程有核心态和用户态
2.进程是暂时的,程序是永久的;进程是一个状态变化的过程,程序可长久保存
3.进程与程序的组成不同;进程的组成包括程序、数据和进程控制块
3.在 Linux 上使用 kill命令来管理进程
kill -9 进程号
批量杀死进程
ps -ef | grep apache | awk '{print $2}' > /tmp/pids
kill $(cat /tmp/pids)
大家缺乏机器练手的话,可以去3A网络瞧瞧!