bootchart--检测linux启动性能的软件

bootchartd作为一个deamon在init中初始化,然后把控制权交还给init进程.bootchartd每隔一段时间对系统环境采样一次,默认是200ms,包括CPU,I/O,空闲时间,磁盘使用,并通过proc得到各个活动进程的信息,把这些数据存储在/var/log/bootchar.tgz,以便后来的数据分析.

Monitoring init performance with bootchart

As you change the landscape of the system boot process, it's useful to understand what changed and how it affects the overall time to boot. Ziga Mahkovec has built a very useful tool called ​​bootchart​​ to visualize the makeup of the boot process. This tool consists of several elements, including a data logger utility and a visualization utility.

The data logger (​​bootchartd​​) runs in the place of the ​​init​​ process (usually, specified in the grub or lilo.conf files). After ​​bootchartd​​ has initialized, it surrenders control back to the real ​​init​​ process (typically, /sbin/init).​​Bootchartd​​ is essentially a profiler that samples the environment at a periodic interval (by default, once every 200 ms). By sampling the environment, I mean that it reads the current CPU statistics, I/O and idle times, disk usage, and information about every active process (through the ​​proc​​ file system). This data is stored in a temporary file (/var/log/bootchart.tgz) for later post-processing.

​Bootchart​​ then uses a post-processing tool to transform the raw data into a boot chart. This process can occur locally using a application (part of the ​​bootchart​​ distribution), but an easier method is through a Web form located at the ​​bootchart​​ home page. An example piece of a boot chart is shown in Figure 2. Note that these charts tend to be quite large (depending on the services and applications started). For links to complete examples, seeResources.