进程管理
一、进程
1. 进程概念
进程是一个具有一定独立功能的程序,在一个数据集上的一次动态执行的过程。进程是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程一般由程序,数据和进程控制块三部分组成。
- 程序用于描述进程要完成的功能,是控制进程执行的指令集;
- 数据是程序在执行时所需要的数据和工作区;
- 程序控制块包含进程的描述信息和控制信息是进程存在的唯一标志。
二、进程查看
1. ps与pstree
ps命令用来查看当前进程的快照信息
用法:ps [ 选项 ]
-u 以用户为中心组织进程状态信息显示
-a 与终端相关的进程
-x 与终端无关的进程
-e 显示所有进程
-f 显示完整格式程序信息
ps -aux
输出格式说明
字段 | 描述 |
---|---|
USER | 用户名 |
%CPU | 进程占用的CPU百分比 |
%MEM | 占用内存的百分比 |
VSZ | 该进程使用的虚拟內存量(KB) |
RSS | 该进程占用的固定內存量(KB)(驻留中页的数量) |
STAT | 进程的状态 |
START | 该进程被触发启动时间 |
TIME | 该进程实际使用CPU运行的时间 |
状态码说明
状态码 | 描述 |
---|---|
D | 无法中断的休眠状态(通常 IO 的进程); |
R | 正在运行可中在队列中可过行的; |
S | 处于休眠状态; |
T | 停止或被追踪; |
W | 进入内存交换 (从内核2.6开始无效); |
X | 死掉的进程 (基本很少见); |
Z | 僵尸进程; |
< | 优先级高的进程 |
N | 优先级较低的进程 |
L | 有些页被锁进内存; |
s | 进程的领导者(在它之下有子进程); |
l | 多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads); |
+ | 位于后台的进程组; |
ps -ef
输出格式说明
字段 | 说明 |
---|---|
UID | 用户ID、但输出的是用户名 |
PID | 进程的ID |
PPID | 父进程ID |
C | 进程占用CPU的百分比 |
STIME | 进程启动到现在的时间 |
TTY | 该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程 |
CMD | 命令的名称和参数 |
pstree命令以树形结构显示当前进程信息
-a 显示每个程序的完整指令,包含路径,参数或是常驻服务的标示
-h 列出树状图时,特别标明现在执行的程序
-n 用程序识别码排序。预设是以程序名称来排序
-p 显示程序识别码
2. top与htop
top命令实时显示进程CPU利用率
htop命令交互式实时显示进程信息
3. netstat
- 查看网卡列表
netstat -i - 查看路由表
netstat -rn - 查看端口
netstat -tunlp
-t 仅显示tcp相关选项
-u 仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字
-l 仅列出有在 Listen (监听) 的服务状态
-p 显示建立相关链接的程序名
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/183493.html