前言
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。
一、查看当前系统进程状态 ps
- 查看系统中的所有进程
ps aux
显示信息说明:
- USER:该进程是由哪个用户产生的
- PID:进程的 ID 号
- %CPU:该进程占用 CPU 资源的百分比,占用越高,进程越耗费资源
- %MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源
- VSZ:该进程占用虚拟内存的大小,单位 KB
- RSS:该进程占用实际物理内存的大小,单位 KB
- TTY:该进程是在哪个终端中运行的。对于 CentOS 来说,tty1 是图形化终端,tty2-tty6 是本地的字符界面终端,pts/0-255 代表虚拟终端
- STAT:进程状态,常见的状态有:R:运行状态、S:睡眠状态、T:暂停状态、Z:僵尸状态、s:包含子进程、l:多线程、+:前台显示
- START:该进程的启动时间
- TIME:该进程占用 CPU 的运算时间,注意不是系统时间
- COMMAND:产生此进程的命令名
- 查看父子进程之间的关系
ps -ef
显示信息说明:
- UID:用户 ID
- PID:进程 ID
- PPID:父进程 ID
- C:CPU 用于计算执行优先级的因子。数值越大,表明进程是 CPU 密集型运算,执行优先级会降低;数值越小,表明进程是 I/O密集型运算,执行优先级会提高
- STIME:进程启动的时间
- TTY:完整的终端名称
- TIME:CPU 时间
- CMD:启动进程所用的命令和参数
二、终止进程 kill
- 通过进程号杀死进程
kill [选项] 进程号
如:
kill -9 3306
- 通过进程名称杀死进程(支持通配符)
killall 进程名称
如:
killall firefox
三、查看进程树 pstree
pstree -pu
四、实时监控系统进程状态 top
- 基本命令
top [选项]
- 操作说明
- 查询结果字段解释(每个内容以逗号隔开,某行的某处可能顺序不一样)
第一行信息:任务队列信息
第二行信息:进程信息
第三行信息: CPU 信息
第四行信息:物理内存信息
第五行信息:交换分区(swap)信息
五、显示网络状态和端口占用信息 netstat
- 查看进程网络信息
netstat -anp
如:
netstat -anp | less
netstat -anp | grep 进程号
- 查看网络端口号占用情况
netstat –nlp
如:
netstat -nlp | less
netstat –nlp | grep 端口号