【Linux】进程管理
目录
进程管理
基本介绍
1、在linux中,每个执行的程序都称为一个进程。每一个进程都分配一个ID号(pid,进程号)。
2、每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
3.一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束。
程序加载到内存就成了进程,程序是静态的,而进程是动态的,前台可以理解为占有这个屏幕直到退出才能做别的事情。后台是一般看不见的,作用是供各种各样的网络服务,比如mysql、tomcat等。
ps -aux显示系统执行的进程
基本介绍
ps命令是用来查看目前系统中,有哪些正在执行,以及他们执行的状态,可以不加任何参数。
ps显示的信息选项
字段 | 说明 |
PID | 进程识别号 |
TTY | 终端机号 |
TIME | 此进程所消耗CPU时间 |
CMD | 正在执行的命令或进程 |
指令 | 说明 |
ps -a | 显示当前终端的所有进程信息 |
ps -u | 以用户的格式显示进程信息 |
ps -x | 显示后台进程运行的参数 |
以上三个参数也可以组合使用 ps -aux
参数说明 :
参数 | 说明 |
USER | 进程执行的用户 |
PID | 进程号 |
%CPU | 占用cpu的百分比 |
%MEM | 占用物理内存的百分比 |
VSZ | 占用虚拟内存的大小(kb) |
RSS | 占用物理内存的大小(kb) |
TTY | 终端名称,缩写 |
STAT | 运行状态,S-表示sleep表示休眠,s-表示该进程是先到进程,N-表示进程拥有比普通优先级更低的优先级,R表示运行状态,D-短期等待,Z-僵死进程,T-被跟踪或被停止等 |
TIME | 占用cpu时间 |
START | 执行开始的时间 |
COMMAND | 进程名,执行该进程的指令 |
注意:COMMADN列如果过长,aux会截断显示,而ef不会
ps -ef全格式显示所有进程
一般使用过滤查找更加的方便:
ps -ef |grep xxx
ps -ef 是以全格式显示当前所有的进程
-e显示所有进程,-f 全格式
参数 | 说明 |
UID | 用户ID |
PID | 进程ID |
PPID |
父进程ID |
C | CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小。表明进程是I/O密集型运算,执行优先级会提高 |
STIME | 进程启动的时间 |
TTY | 完整的终端名称 |
TIME | CPU时间 |
CMD | 启动进程所用的命令和参数 |
终止进程kill和killall
介绍:
若是某个进程执行一半需要停止时,或是已消耗了很大的系统资源时,此时可以考虑停止该进程,使用kill命令来完成此项任务
语法:kill [选项] 进程号 (解释:通过进程号杀死进程)
语法: kilall 进程名称 (通过进程名称杀死进程,也支持通配符,这在系统因负载过大变得很缓慢是用处大,其下的子进程也会终止)
常用选项
-9:表示强迫进程立即停止
示例:终止多个gedit,killall指令
案例2:踢掉某个非法登录用户
kill 进程号
示例:强制终止终端 kill -9 bash 对应的进程号
pstree查看进程树
基本语法:pstree [选项],可以更加直观来查看进程信息
常用选项:
-p:显示进程PID
-u:显示进程的所属用户
示例1:以树状的形式显示所有进程的pid
示例2:以树状的形式显示进程的用户
- 点赞
- 收藏
- 关注作者
评论(0)