bootchart--检测linux启动性能的软件
摘自http://www-128.ibm.com/developerworks/library/l-boot-faster/index.html?ca=dgr-lnxw01FC-FastLinuxBoot,
Parallelize applications for faster Linux booting ,有兴趣的可以去读原文.也可以直接从http://www.bootchart.org/下载软件.
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 Java™ 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.