linux下进程管理
#程序与进程的关系
程序:保存在硬盘/光盘等介质中的可执行代码和数据
程序是静态保存的代码
进程:在CPU/内存中运行的程序代码
动态运行的代码
父,子进程:每一个进程可以创建一个或者多个进程
在linux下查看系统进程状态
1.图形界面进行查看
Applications -> System Tools -> System Monitor
2.静态查看系统进程
ps命令:
用途:查看静态的进程统计信息
格式:ps -aux
选项:
a:显示当前终端下的所有进程信息
u:使用以用户为主的格式输出进程信息
x:显示当前用户在所有终端下的进程信息
ps命令解析:
USER:当前进程的属主(用户名)
PID:代表进程唯一标识
%CPU:代表占用CPU时间与总时间的百分比
%MEM:占用内存占总内存的百分比
VSZ:占用虚拟内存的空间(单位KB)
RSS:进程占用的内存空间(单位KB)
TTY:代表终端,
? 代表与终端机无关
tty1~tty6代表本机上面的登入者程序
pts/0 代表网络连接
STAT:代表进程状态:
R:代表该进程正在运行
S:代表该程序睡眠状态
T:代表该程序已经停止运行或者说侦测
Z:代表该进程已经停止,但是依旧在使用系统资源,称为僵尸进程
START:代表进程启动时间
TIME:代表进程占用了CPU运作的多长时间
COMMADN:代表该进程是由哪个程序发起的
3.动态查看系统进程:
top:动态查看系统进程信息
top内容解析:
第一行:
top -
08:49:27 代表当前系统时间
up 1:17, 系统运行多长时间啦
3 users, 当前登陆用户数
load average: 0.03, 0.07, 0.16 系统的平均负载(每1,5,15MIN的平均负载)
第二行:
Tasks: 485 total, 总得进程数
1 running, 正在运行的进程数
484 sleeping, 睡眠状态的运行数
0 stopped, stop状态的运行数
0 zombie 僵尸状态的运行数
第三行:
%Cpu(s): CPU状态信息
5.5 us, 代表用户空间占CPU额百分比
1.0 sy, 内核空间占用CPU的百分比
0.0 ni, 改变过优先级的进程占用CPU的百分比
93.5 id, 空闲CPU百分比
0.0 wa, IO等待占用CPU的百分比
0.0 hi, 硬中断占用CPU的百分比
0.0 si, 软中断占用CPU的百分比
0.0 st
第四行:
KiB Mem: 内存信息
2035580 total, 总内存
1338700 used, 已经使用的
696880 free, 空闲的
1492 buffers 缓存的内存量
第五行:
KiB Swap: 交换分区信息
2113532 total, 总量
0 used, 使用占有量
2113532 free. 空闲交换分区量
353092 cached Mem 穿冲区交换分区总量
第六行:空行
第七行:
PID 进程ID号
USER 进程属主
PR 进程优先级
NI 同上,负值越低优先级越高,也就是负值的优先级高于正直的优先级
VIRT 代表进程使用的虚拟内存量
RES 进程占用的物理内存量
SHR 共享内存大小
S 进程状态
%CPU 进程CPU时间占用比
%MEM 进程MEM占用比
TIME+ 进程运行时间
COMMAND 进程命令
top常用选项:
P:根据CPU占用情况对进程列表进行排序
M:根据内存占用情况进行排序
N:根据启动时间进行培训
h/?:进行帮助信息查看
k:结束进程(9:强制结束进程)
r:修改优先级(NI)
可以使用空格强制更新进程状态显示
q:正常退出
进程相关命令
kill:用于终止指定PID号的进程
killall:用于终止指定名称的所有进程
-9:强制终止
pgrep:根据特定条件查找进程PID信息
-l:列出进程的名称
-U:根据进程所属的用户名进行查找
-t:根据进程所在终端进行查找
pkill: 批量结束符合条件的进程
-u:根据用户删除 pkill -u root
-t:根据终端 pkill -t pts/1