几乎每个接触类 Unix 操作系统的工程师都知道如何查看系统负载。但这东西的工作机理到底是怎样的,可能没有多少能说清楚。对比了一些相关信息,加上自己的理解,做一下笔记。


什么是 Load ? 什么是 Load Average ?

Load 就是对计算机干活多少的度量(WikiPedia:
the system load is a measure of the amount of work that a computer
system is doing)。也有简单的说是进程队列的长度. Load Average 就是一段时间 (1 分钟、5分钟、15分钟)
内平均 Load 。【最好的参考文章:UNIX® Load Average Part 1: How It Works


下面是一个 uptime 命令输出:


$ uptime
18:57:48 up 423 days, 3:55, 2 users, load average: 1.16, 1.12, 1.20

尽管各种信息来源的定义都不太确定。能确定的一件事情是,你不能精确获取当前时间的 Load . 最小的计算粒度是 5 秒钟(CALC_LOAD 每 5HZ 计算一次, 5HZ 为 5秒钟,这里的 HZ 是系统定义的变量). 参见 Linux Kernel 这段代码:


 869        count -= ticks;
870 if (unlikely(count < 0)) {
871 active_tasks = count_active_tasks();


[更多查看原文]

点评 Trackback 收藏它 拍它!
挖上一个精彩
挖客给您推荐更多精彩!
挖下一个精彩

这些挖友臭味相投 · · · · · ·


挖友说 · · · · · ·

 

匿名评论
(尊重网上道德,承担一切因您的行为而直接或间接导致的法律责任)

 

 
合作伙伴:   网易科技   赛迪社区   刷刷   煎蛋   动态网站制作指南   265上网导航   新新web2.0   9Fav就喜欢网   Linux桌面中文网   DigiArt   我爱水煮鱼   奇趣发现   IB资讯
  天涯海阁   乐婴网   cngadget   有意思吧   软件一千零一页  DiggLife  设计|生活|发现新鲜   掘客巴士  17Fav  掘图志   桑林志   91新鲜网   精灵的天下