linux 进程

关于CPU负载的问题:

  • load = 0 的时候意味着这个桥上并没有车,CPU没有任何任务
  • load < 1 的时候意味着桥上的车子并不多,一切都还是很流畅的,CPU的任务并不多,资源还很充足
  • load = 1 的时候就意味着桥已经被车给占满了,没有一点空隙,CPU已经在全力工作了,所有的资源都被用完了,但是还是有大量的进程在请求,在等待。若是这个值大于2、大于3,表示进程请求超过 CPU 工作能力的 2 到 3 倍。而若是这个值 >5 说明系统已经在超负荷运作了。

查看物理CPU的个数:

cat /proc/cpuinfo |grep 'physical id'|sort |uniq|wc -l

每个CPU的核心数:

cat /proc/cpuinfo |grep "physical id"|grep 'o'|wc -l

通过上面指数可以知道 load 的临界值为 1 ,但是在实际生活中,比较有经验的运维或者系统管理员会将临界值定为 0.7 。

这里的指数都是除以核心数以后的值,不要混淆

  • 若是 load<0.7 并不会去关注他
  • 若是 0.7<load<1 的时候就需要稍微关注一下,虽然还可以应付,但这个值已经离临界不远了
  • 若是 load=1 的时候就要警惕了,因为这个时候已经没有太多的资源,已经在全力以赴
  • 若是 load>5 的时候系统已经快不行了,这时你需要加班解决问题

top 是一个前台程序,所以是一个可以交互的

常用交互命令解释
q退出程序
l切换显示 平均负载 和 启动时间 的信息
P根据 CPU 使用 百分比大小 进行排序
M根据驻留 内存大小 进行排序
i忽略闲置和僵死的进程,这是一个开关式命令

ps 工具的使用

ps 也是最常用的查看进程的工具之一

参数:

  • -A :所有的进程均显示出来,与 -e 具有同样的效用
  • -a :显示现行终端机下的所有进程,包括其它用户进程
  • -u :以用户为主的进程状态
  • x:通常与 a 这个参数一起使用,列出比较完整的信息

输出格式规划:

  • l :较长、较详细的将该 PID 的信息列出
  • j : 工作的格式(job format)

STAT 表示进程的状态,进程的状态有很多:

状态解释
RRunning. 运行中
SInterruptible Sleep. 等待调用
DUninterruptible Sleep. 不可中断睡眠
TStoped. 暂停或者跟踪状态
XDead. 即将被撤销
ZZombie. 僵尸进程
WPaging. 内存交换
N优先级低的进程
<优先级高的进程
s进程的领导者
L锁定状态
l多线程状态
+前台进程

其中的 D 是不能被中断的睡眠状态,处在这种状态的进程不接受外来的人任何 signal

所以无法继续使用 kill 命令杀掉处于 D 状态的进程

无论是 kill,kill -9 还是 kill -15 。一般处于这种状态可能是进程 I/O 的时候出问题了

pstree

在这里插入图片描述

pstree -up

参数选择:

  • -A : 各程序树之间以 ASCII 字元来连接
  • -p : 同时列出每个 进程 的 PID
  • -u : 同时列出每个 进程 的所属账户名称
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值