man, 15.11.2004 kl. 23.24 skrev Ziga Mahkovec: > On Sat, 2004-11-13 at 12:18 -0500, Owen Taylor wrote: > > It should be possible to start with a limited set of easily collected > > data and already get a useful picture. Useful data collection could be > > as simple as taking a snapshot of the data that the "top" program > > displays a few times a second during boot. That already gives you a > > list of the running processes, their states, and some statistics about > > global system load. > > So I gave this a try: > > 1. I modified the boot procedure so that early in rc.sysinit, a tmpfs is > mounted and top is run in batch mode (to output every 0.2 seconds). The > logged output is later parsed only up to the point where gdmgreeter is > running and the system is relatively idle (i.e. boot complete and ready > for login). > > 2. A Java program parses the log file, builds the process tree and > finally renders a PNG chart. Processes are sorted by PID and traversed > depth first. > > This still needs more work but here's a sneak preview: > http://www.klika.si/ziga/bootchart/bootchart.png > > (as a result of http://www.klika.si/ziga/bootchart/bootop.log.gz ) > > Some processes were filtered out for clarity -- mostly sleepy kernel > processes and the ones that only live for the duration of a single top > sample. This skews the chart a bit but is definitely more > comprehensible (compare with > http://www.klika.si/ziga/bootchart/bootchart-complete.png ). > > Some things I plan on adding: > - start logging earlier in the boot process (possibly in initrd), > - add additional layers (e.g. make use of the kernel patch Arjan > suggested for showing the number of open files), > - improve process tree representation and add dependency lines, > - render SVG instead, for scalability and interactivity. > > This definitely helped me with my boot times -- the 4-second load gap at > the start I found to be "modprobe floppy", apparently timing out on my > floppyless laptop :) > > Ah! that's why the floppy ligth flashes during "kudzu" (at the end of it) :) > Any ideas or comments are welcome, > -- > Ziga