标签:进程管理
VSZ:虚拟内存集
rss:常驻内存集,位于物理内存中,但不能被交换出去
多进程模型:来一个用户,就给他一个进程
多线程模型:一个用户来访问,就给这个进程里给他分配一个线程
##########################################################
进程状态:
Stopped 已经停止的,再也不会去CPU上运行的
Ready 就绪,排队等待执行
Executing 正在运行的
Uninterruptible 运行当中因为别的需要转入睡眠状态,不可中断,需要调用I/O,释放CPU
Interruptible运行当中因为别的需要转入睡眠状态,可中断睡眠
Zombie 僵尸进程,结束了但不释放内存,内存泄漏的表现
###########################################################
所有进程都是一个进程的子进程:
init:上帝 它的进程号为 1
/proc 以数字(就是PID号)命名的目录;每一个目录对应一个进程
ps 查询跟终端相关或者无关的进程
SysV风格:带横线
BSD风格 :不带横线
a: 所有与终端有关的进程
u: 显示
x: 所有跟终端无关的进程
ps aux | head 查看前十行 (注释) BSD风格 最常用
USER PID %CPU %MEM VSZ
启动进程用户 进程ID号 占用时间百分比 占物理内存百分比 虚拟内存集
RSS TTY STAT START TIME
常驻内存集 跟哪个终端相关联 进程状态 启动时间 占用CPU时长
COMMAND
哪个命令启动的进程 如果加了中括号表示内核线程 不加中括号表示用户进程
ps -o PID 可以指定显示某些字段
ps -elf | head
PRI 优先级
PSR 上次运行在哪颗CPU上
pstree
top 动态监控进程
1、当前时间 2、启动后已经运行的时长 3、登录的用户 4、平均负载
5、平均队列长度,过去1分钟5分钟15分钟平均值,值越小CPU负载越低
6、Tasks:所有进程的相关信息;进程数量、有几个处于运行状态、有几个是睡眠的、几个停止
7、Cpus:每一个cpu的负载情况 us表示用户空间、sy内核空间占据的百分比、ni因为调整nice值所占据的空间的比例、id空闲百分比、wa等待i/o完成所占据的时间、hi硬件终端占据的时间、
8、si软中断所占据的时间、st被偷走的时间
9、内存和交换空间的使用量、剩余量
10、PR:优先级;RT:表示实时优先级
11、VIRT:虚拟内存集
12、RES:常驻内存集
13、SHR:共享内存大小
14、S:表示状态
15、%CPU:cpu占用率
16、%MEM:内存百分比
17、TIME:运行时长,真正占用CPU的时长
18、COMMADN:进程名
执行top后
直接敲M: 可以查看谁占用的内存大
P:返回查看占用CPU大小
T:累计看谁占用CPU的时间长
ltm:直接敲决定是否显示1-18
k:输入进程号可以杀死某个进程
*****************************************************
进程间通信:(IPC:Inter Process Communication)
共享内存:
信号:
semaphore:旗语
kill -l 显示所有可用的信号
(1号 SIGUP 让一个进程不用重启,就可以重读其配置文件,并让新的配置文件信息生效
2号SIGINT CTRL+c 中止
9号SIGKILL 杀死一个进程,强行杀死。
15号 SIGTERM) 终止一个进程,枪毙你但是可以交代后事
############
指定一个信号
kill -1
kill -SIGKILL
信号名称简写 kill -KILL
######################
咱们现在想杀死top进程
ps aux | grep top
kill + PID进程号号 默认是第15个信号
######################
咱们现在想杀死一堆httpd进程
killall httpd
####################3
调整nice值;即调整进程优先级
调整已经启动的进程的nice值
renice ni pid ni值越高优先级越低
#######################
fg 可以还原CTRL+z的后台进程
jobs 查看CTRL+z 之后出现的作业号,有+号的表示下次默认操作的作业;-号表示第二个默认操作的作业
kill + %作业号 可以杀死 某个CTRL+Z后的作业
*****************************************************
进程的分类:
跟终端相关的进程:某个主机启动的进程
跟终端无关的进程:在内核启动的进程
********************
vmstat 1:系统状态查看命令
procs: r 运行队列长度;b阻塞队列长度
swpd:交换大小
free:空闲内存
buff:用于缓冲的
cache:用于缓存的
si:swapin 从物理到swap有多少个页面换进换出,它是动态的
so:
bi:有多少个磁盘块被调入内存,他是动态的
bo:
in:中断的个数
cs:上下文切换的次数 即进程切换的次数
us:用户控件占用的百分比
id:内核控件占用的百分比
cat /proc/meminfo 查看内存信息
#####################
进程状态:STAT
D:不可中断的睡眠
R:运行或就绪
S:可中断的睡眠
T:停止
Z: 僵尸
<:高优先级进程
N:低优先级进程
+:前台进程组中的进程(从命令行输入的进程)
l:多线程进程
s:回话进程的首进程 子进程的父进程
#####################################
优先级:
用户可调的优先级值是100 - 139
调整nice值:
-20 — 19 对应100 — 139
标签:进程管理
原文地址:http://10183596.blog.51cto.com/10173596/1690515