立即注册  找回密码
 立即注册
CeraNetworksBGVM服务器主机交流会员请立即修改密码Sharktech防护
查看: 46|回复: 0

Linux系统负载详解

[复制链接]

Linux系统负载详解

[复制链接]

81

主题

8

回帖

711

积分

高级会员

积分
711
土小帽

81

主题

8

回帖

711

积分

高级会员

积分
711
2023-11-3 21:12:27 | 显示全部楼层 |阅读模式
在进程调度器维护的运行队列中,任何时刻至少存在一个进程,那就是正在运行的进程。而当运行队列中有不止一个进程时,就说明此时CPU比较抢手,其他进程还在等着,进程调度器应该尽快让正在运行的基础释放CPU。
通过在任何时刻查看/proc/loadavg,可以了解到运行队列的情况:
[root@localhost ~]# cat /proc/loadavg
0.00 0.02 0.05 1/335 3427

注意1/335这部分,其中的1代表此时运行队列中的进程个数,而335则代表此时的进程总数。
最右边的3427代表到此时为止,最后创建的一个进程ID。
接下来,请看左边的三个数值,分别是0.00 0.02
0.05,他们就是我们常说的系统负载。我们都知道,系统负载越高,代表CPU越繁忙,越无法很好地满足所有进程的需要。但是,系统负载是如何计算而来的
呢?根据定义,它是在单位时间内运行队列中就绪等待的进程数平均值,所以当运行队列中就绪进程不需要等待就可以马上获得CPU的时候,系统负载便非常低。
当系统负载为0.00时,说明任何进程只要就绪后就可以马上获得CPU,不需要等待,这时候系统响应速度最快。
那么,刚才提到的三个数值,便是系统最近1分钟、5分钟、15分钟分别计算得出的系统负载。
我们还可以通过其他方法获得系统负载,比如top、w等工具:
[root@localhost ~]# top
top – 15:24:25 up 99 days, 5:01, 1 user, load average: 0.13, 0.05, 0.05


[root@localhost ~]# w
15:24:59 up 99 days, 5:02, 1 user, load average: 0.07, 0.04, 0.05
从实现方法上看,这些工具获得的系统负载都是来源于/proc/loadavg。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|HS2V主机综合交流论坛

GMT+8, 2024-12-26 03:17 , Processed in 0.013160 second(s), 2 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表