Bootchart
Details
| Size: | 0K |
| Last Update: | 2008-05-05 22:21:45 |
| Version: | 0.9 |
| OS Support: | Linux |
| License/Program Type: | GPL (GNU General Public License) |
| Publisher: | Ziga Mahkovec |
| Price: | $0.00 |
Description:
Bootchart 0.9 is benchmarks software developed by Ziga Mahkovec.
Bootchart is a software for performance analysis and visualization of the GNU/Linux boot process. Resource utilization and process information are collected during the boot process and can later be displayed in a PNG, SVG or EPS-encoded chart.
The boot process is modified to start the boot logger (/sbin/bootchartd) instead of /sbin/init. The boot logger will run in background and collect information from the proc file system (/proc/[PID]/stat, /proc/stat and /proc/diskstats).
The statistics are logged to a virtual memory file system (tmpfs). Once the boot process completes (denoted by the existence of specific processes), the log files are packaged to /var/log/bootchart.tgz.
The log package can later be processed using a Java application which builds the process tree and renders a performance chart. The chart may then be analyzed to examine process dependency and overall resource utilization. A renderer web form is also available on the project web site.
The chart can then be analyzed to examine process dependency and overall resource utilization.
Runing:
1. Install bootchartd and the bootchart renderer. See INSTALL for details.
2. Modify your boot loader (GRUB/LILO) if necessary. Alternatively, change the kernel command line interactively upon reboot.
Reboot.
3. Verify that /var/log/bootchart.tgz was created and contains the log files.
4. Render the chart by running:
$ java -jar bootchart.jar
Alternatively (if no Java Development Kit is installed to build the JAR package), the web renderer may be used.
To use the web renderer from a script, run:
curl --form format=svg --form log=@/var/log/bootchart.tgz
http://bootchart.klika.si:8080/bootchart/render > bootchart.svgz
(optionally replacing the svg/bootchart.svgz pair with png/bootchart.png or eps/bootchart.eps.gz)
5. View the generated image and analyze the chart.
SVG images may be viewed using any of the following programs:
- rsvg-view (librsvg; GNOME)
- svgdisplay (ksvg; KDE)
- Gimp (using the gimp-svg plugin)
- Inkscape
- Squiggle (Batik; http://xml.apache.org/batik/)
To get help for additional options, run:
$ java -jar bootchart -h
How it works:
Logger Startup
The boot logger (/sbin/bootchartd) is run by the kernel instead of /sbin/init. This can be achieved by modifying the GRUB or LILO kernel command line, e.g.:
/boot/grub/menu.lst
[...]
title Fedora Core (2.6.10) - bootchart
root (hd0,1)
kernel /vmlinuz-2.6.10 ro root=/dev/hda1 init=/sbin/bootchartd
initrd /initrd-2.6.10.img
The installation script and RPM package will try to add the boot loader entry automatically.
The boot logger will start itself in the background and immediately run the default init process, /sbin/init. The boot process will then continue as usual.
Data Collection
Since the root partition is mounted read-only during boot, the logger needs to store data in memory, using a virtual memory file system (tmpfs).
As soon as the /proc file system is mounted — usually early in the sysinit script — the logger will start collecting output from various files:
/proc/stat system-wide CPU statistics: user, system, IO and idle times
/proc/diskstats system-wide disk statistics: disk utilization and throughput
(only available in 2.6 kernels)
/proc/[PID]/stat information about the running processes: start time, parent PID, process state, CPU usage, etc.
The contents of these files are periodically appended to corresponding log files, every 0.2 seconds by default.
The logger will try to detect the end of the boot process by looking for specific processes. For example, when in runlevel 5 (multi-user graphical mode), it will look for gdmgreeter, kdm_greet, etc. As soon as one of these processes is found running, the logger will stop collecting data, package the log files and store them to /var/log/bootchart.tgz.
Optional Process Accounting
In most cases, the output from /proc/[PID]/stat files suffices to recreate the process tree. It is possible however, that a short-lived process will not get picked up by the logger. If that process also forks new processes, the logger will lack dependency information for these "orphaned" processes — meaning that they might get incorrectly grouped by the chart renderer.
When truly accurate dependency information is required, process accounting may be utilized. If configured, the kernel will keep a log file with detailed information about processes. BSD process accounting v3 includes information about the process' PID and parent PID (PPID) — effectively enabling an accurate reconstruction of the process tree.
To enable process accounting, the kernel needs to be configured to include CONFIG_BSD_PROCESS_ACCT_V3, under:
[ ] General setup
[ ] BSD Process Accounting
[ ] BSD Process Accounting version 3 file format
The GNU accounting utilities (package psacct or acct) also need to be installed. The boot logger will use the accton command to enable process accounting; it will include the accounting log in the tarball.
Visualization
The log tarball is later passed to the Java application for parsing and rendering the data. The CPU and disk statistics are used to render stacked area and line charts. The process information is used to create a Gantt chart showing process dependency, states and CPU usage.
A typical boot sequence consists of several hundred processes. Since it is difficult to visualize such amount of data in a comprehensible way, tree pruning is utilized. Idle background processes and short-lived processes are removed. Similar processes running in parallel are also merged together.
Finally, the performance and dependency charts are renderer as a single image in either PNG, SVG or EPS format.
Bootchart 0.9 supports english interface languages and works with Linux.
Downloading Bootchart 0.9 will take if you use fast ADSL connection.
0 comments
Downloadtube.com agrees that pirated software hurts software
developers and does not support such practices. We acknowledge and
agree that software piracy is theft. Using Bootchart crack,
Bootchart key generator, Bootchart keygen, as well as any
pirated Bootchart serial number/serial numbers and Bootchart
registration code/codes, warez, keys, torrents, passwords, is illegal
and does not support the future development of Bootchart.
Downloadtube.com advises that Bootchart should be only used in
accordance with the rules of intellectual property and the existing
Criminal Code. Downloadtube.com does not allow the inclusion of any
crack, serial or keygen and disclaims any liability for the
inappropriate use of Bootchart.
Add to
Bootchart Version History
Related Software
|
|
From category: Emulators |
| Enomalism Virtualized Management Console 0.1 is emulators software developed by Enomaly Labs. Enomalism Virtualized Management Console project is a open source web-based systems administrator manag... |
|
|
From category: Boot |
| BootRoot 0.4 is boot software developed by Jonathan Rosenbaum. BootRoot creates a boot disk with lilo, a kernel and an initrd image. The initrd script mounts another root disk with a compressed (gz... |
|
|
From category: Operating-Systems-Linux-Distri |
| EduLinux 9.1 is operating systems linux distri software developed by EduLinux Team. EduLinux is a Linux distribution intended for an office and educational use. The primary objective of this distri... |
|
|
From category: Operating-Systems-Other |
| Car PC Development Kit 0.2.1 is operating systems other software developed by Peter Willis. Car PC Development Kit is a kit for making a Linux distribution for a car PC. Unlike most distribu... |
|
|
From category: System-Administration |
| Another File Integrity Checker 2.9-1 is system administration software developed by Gerbier Eric. Another File Integrity Checker is another file integrity checker, designed to be fast and fully por... |
|
|
From category: Software-Distribution |
| Patch Check Advanced (pca) generates lists of missing and installed patches for Sun Solaris systems.... |
|
|
From category: Operating-Systems-Linux-Distri |
| Black Orion Enterprise Linux Workstation 4.3 is operating systems linux distri software developed by Emiel J.Ph. Obdam. Black Orion Network is an update and system management platform for among oth... |
|
|
From category: Monitoring |
| diskfree 2.1.0 is monitoring software developed by Douglas J Hunley. diskfree is a shell script designed to be run periodically from cron to let you know how much disk space you\'ve used, what dire... |
|
|
From category: Monitoring |
| avpmilter 0.2-2 is monitoring software developed by Vadim V Zotov. avpmilter is a sendmail milter interface to the Kaspersky antivirus daemon. Avpmilter gets virus scan result and tells sendmail... |
|
|
From category: Networking |
| Cyrus IMAP Server 2.1.18 is networking software developed by Carnegie Mellon. The Cyrus IMAP server is generally intended to be run on sealed systems, where normal users are not permitted to log in... |
|
|
From category: Software-Distribution |
| debian-updates 1.7 is software distribution software developed by Steve Kemp. debian-updates is a simple script that sends an email or displays console messages if any relevant Debian security upda... |
|
|
From category: System-Administration |
| fakechroot 2.4 is system administration software developed by Piotr Roszatycki. fakechroot provides a fake chroot environment to programs. A fake chroot allows you to run programs which require roo... |
|
|
From category: Emulators |
| FreeNX 0.4.1 is emulators software developed by Fabian Franz. FreeNX Server is the Free and GPL\'d NX server implementation by Fabian Franz, based on NoMachine.com\'s NX technology. NoMachin... |
|
|
From category: Archiving |
| changedfiles 1.0 RC1 is archiving software developed by Michael L. Welles, Philip Antoniades. A framework for simple filesystem replication and/or security monitoring and/or automatic file transfor... |
Leave a comment