bootchart--检测linux启动性能的软件
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.
bootchart--检测linux启动性能的软件的更多相关文章
- Linux硬盘性能检测
对于现在的计算机来讲,整个计算机的性能主要受磁盘IO速度的影响,内存.CPU包括主板总线的速度已经很快了. 基础检测方法 1.dd命令 dd命令功能很简单,就是从一个源读取数据以bit级的形式写到一个 ...
- 记录Linux启动流程的工具bootchart
/********************************************************************* * Author : Samson * Date ...
- 2019-8-31-C#-程序集数量对软件启动性能的影响
title author date CreateTime categories C# 程序集数量对软件启动性能的影响 lindexi 2019-08-31 16:55:58 +0800 2018-10 ...
- C# 程序集数量对软件启动性能的影响
本文通过很多的数据测试分析在一个项目引用很多个外部项目和将外部项目的类合并到一个项目之间的启动性能的不同. 通过分析知道了如果一个项目引用了很多项目,而且在启动过程会全部调用这些项目,这时的软件性能会 ...
- Linux服务器性能查看分析调优
一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...
- 【转】linux服务器性能查看
转载自https://blog.csdn.net/achenyuan/article/details/78974729 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuin ...
- Linux服务器性能分析与调优
一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...
- linux服务器性能查看
1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l 2.查看每个物理cpu ...
- Linux(一) 软件安装
前言:在Linux中安装软件时,我们经常要考虑到这样几个个问题: (1).怎样安装软件; (2).软件安装在什么地方; (3).如何卸载删除不要的软件...... 下面,我们就 ...
随机推荐
- android开发之this.finish()的使用 分类: android 学习笔记 2015-07-18 19:05 30人阅读 评论(0) 收藏
在一个Activity用完之后应该将之finish掉,但是,之前在学校里自己摸索着开发时并没有太注意这个问题,因为activity无论是否finish掉对功能的影响貌似都不是那么明显(这是读书时候的观 ...
- windows10UWP:如何在xaml中设置控件为 public ?
windows10UWP中,由于使用页面导航,操作在不同一个页面的控件需求经常遇到. 如果要对另一个page里面的控件进行操作,那么这个控件必须设置为 public .在 xaml 设置控件的方法是: ...
- 浅谈inline-block
一.区分block,inline,inline-block 1.block block元素会独占一行,多个block元素会各自新起一行.默认情况下,block元素宽度自动填满其父元素宽度. block ...
- jetty服务器访问系统的域名
jetty-env.xml=><Set name="contextPath">/epps-compensation-backend</Set> 这个决 ...
- Tomcat-java.lang.IllegalArgumentException: Document base F:apps does not exist or is not a readable
启动Tomcat的时候,报错:java.lang.IllegalArgumentException: Document base F:apps does not exist or is not a r ...
- 【转】iOS-Core-Animation-Advanced-Techniques(三)
原文: http://www.cocoachina.com/ios/20150105/10827.html 专用图层 复杂的组织都是专门化的--Catharine R. Stimpson 到目前为止, ...
- js正则验证方法大全
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- stat 的名字接口
File::stat - stat 的名字接口 名字为:dev, ino, mode, nlink, uid, gid, rdev, size, atime, mtime, ctime, blksiz ...
- java的动态绑定与双分派(规避instanceof)
1. 动态绑定的概念 指程执行期间(而不是在编译期间)判断所引用对象的实际类型,根据其实际的类型调用其相应的方法 . 例如: package org.demo.clone.demo; public c ...
- js编译和执行顺序
JS是一段一段执行的(以<script>标签来分割),执行每一段之前,都有一个“预编译”,预编译干的活是:声明所有var变量(初始为undefined),解析定义式函数语句. 还有个关于 ...