内核统计CPU使用率相关源码解读
-
工具
-
工欲善其事必先利其器,下面介绍一下读代码的工具和资料
-
网站
-
书籍
-
Linux内核源代码情景分析
- 这本书的内核版本有点老,但是内容讲的很详细,可以用来看之前的版本
-
深入理解Linux内核架构
- 这本书跨过了一个重要的内核版本节点,包含了很多新的知识
-
Linux编程接口
- 这本书对接口的讲解非常充分,就是可惜内核版本有点老
-
奔跑吧 Linux内核
- 内核版本很新,但是讲的内容偏少
-
-
-
相关代码
-
首先是调度代码
-
然后是时间子系统
-
最后是如何统计CPU时间
-
这里说一下我为什么要看这几块代码,如何统计CPU时间是这次项目的核心,其中关键选项是VIRT_CPU_ACCOUNTING和VIRT_CPU_ACCOUNTING_GEN。但是要打开这两个选项,又要看no_hz选项。又由于我发现CFS在文档中说明可以防御主动放弃tick的攻击,所以我又阅读了调度相关的代码。
-
-
讲解源码原则
-
数据结构
-
相关函数及其调用流程
-