Boot Process Visualization
zigam writes "The time needed to boot desktop Linux systems is becoming an issue. That's why I recently took the challenge posted by Red Hat's Owen Taylor on the Fedora developers list and came up with a tool for visualization of the boot process. It collects performance data during the boot up and then renders an SVG or PNG performance chart. It immediately helped Red Hat developers solve some issues and I have since received boot charts from other GNU/Linux developers as well. Solaris kernel developers reported success in improving their boot process too." Update: 12/15 20:04 GMT by T : Sorry, someone decided your time was worth wasting; no more mirrored bootchart.
No comments and your IIS web server is down. Nice.
Life is the leading cause of death in America.
OTOH, it *is* IIS, it could die if you blink at it the wrong way. :)
feh. stuff.
I want similar charts of telemetry of a server as it goes down, like the forensics of a Slashdotting. Today's front-page feature should give zigam plenty of data to experiment with ;).
--
make install -not war
How about, uh, you know, actually loading multiple things at once instead of waiting for some service to take its time to start, therby holding everything else up along the way. That's what the problem seems to be - everything has to load in-line.
On another note, I'd like to see other distros do what Red Hat is doing to Fedora's boot screen: Using X resolutions for the startup. Damn, that looks nice! Thought it would be even nicer if the pointless resolution change between bootup and main X server startup was eliminated (it's usually the same res anyway).
It would be cool if it didn't suck.
Bah! Here's an ascii visualization of your webserver:
(X_X) <--- Dead in the water
"Mind over matter: If you don't mind, then it doesn't matter"
in case it is slashdotted here is a mirror of the chart.
Linux ===============
BSD ========
The war with islam is a war on the beast
The war on terror is a war for peace
I added a '&' to my /etc/rc file.
:-D
like so:
$i start&
I have been berated a coupdl times in online forum because 'some services might need it to start properly', but I have never noticed any ill effects. My machines now boots in about 6 seconds
/* oops I accidentally made a comment, sorry */
http://www-106.ibm.com/developerworks/linux/librar y/l-boot.html?ca=dgr-lnxw82-obg-BootFast
IBM has published a paper on speeding up the boot process using something like a make to launch things in parallel that are not dependent on each other.
My rights don't need management.
Reminds me of an old Gateway 2000 commercial where a kid is waiting for a computer to start up. It goes through a montage of the kid screwing around in the garage waiting for it.
"No, Mom! It's still starting!"
One of my friends had a theory that held true (up until Windows XP) that Windows (and MacOS at the time, this was 1995) was harmonically tuned to boot up just as long as it would take you to get up and take a piss and come back.
Though some of the Windows 2000 machines here at work make me think I have enough time to take a dump and come back. They're fast, just something is very wrong with them.
It would be cool if it didn't suck.
Here's an example image for you to ogle:
http://people.redhat.com/davidz/bootchart.png.
until hibernate features work correctly anyway... and when X locks up and doesn't let you ctrl+alt+f# to another vterm/tty (only had that happen a few times, but it does happen) and you don't have another computer handy to ssh in and fix it...
and if you have a loud computer near the bed...
Actio personalis moritur cum persona. (Dead men don't sue)
Maybe this is a silly question, but why cant the boot process be optimized for "workstation" type usage? That is: get a usable X login prompt up as soon as possible.
On my machine, a bunch of random (but useful) things are fired up sequentially, before the prompt appears. Some things are used rarely/not at all, but they're still started. I dont want to disable them, but I dont want to wait for them either. Apache. MySQL. Privoxy.
Why doesnt inetd start all these things? Apache would get started on first use. Likewise with the other services -- I pay for the startup (once) when I want to use them.
On a server, it'll be up for forever so starting everything on boot makes sense. For a workstation, the system should be usable as fast as possible; the rest of the services can just as well wait until later.
One neat way to do this would be to take a Bach fugue and give each box one voice. Not only would you get some fine background music during boot, you'd know if a machine hung during boot and which one.
Good, inexpensive web hosting
# First of all, if you run Linux, you're not booting much.
/.ing should be drug into the street and shot for being an idiot. Twice. /.ed your right on that one pal. Yeah. Sure.
Maybe some people chose to turn of their box when
they are not at home or when they are sleeping. Maybe some people want to save a little bit of electricty if they can.
This is the problem with the linux zelots. Someone points out somthing that is annoying and should be fixed and people rush to say how this is a non issue, then they go on to say how this is actually better than the way windows does it.
People who run IIS and then subject it to a
Yeah because IIS is the only webserver that can be
500 dollar reward for tip(s) leading to the arrest of the person(s) who stole my sig.
For Windows, use BootVis. Comes very handy to figure out what driver is pausing the boot process for 5 minutes...
For bonus points, explain why Microsoft pulled it from its website.
The first two comments in a row I read were saying how "My linux never crashes, I never reboot, etc etc". That's great. You have to keep in mind that the average /. reader is not the average computer user!
Most people turn off their computer when they are not using it, and actually turn it on when they need it. For the average computer user, boot times mean quite a bit more since they see it more. Don't be ignorant and think that just because it means little to you, it is unimportant to improve.
1. MS = Evil
2. IIS always sucks
3. /.ers are smart enough to know better
Any admin worth his wages knows better than to use IIS, steaming pile that it is. I know the button monkeys like it because it's easier than all that damn reading and knowledge that Apache requires, but it still sucks. And we could exclude Linux from this anyway (if we chose to), Apache runs on Wintel just fine, amongst many other platforms. That said, if you are here hawking your Linux tools there is something lame about hosting them on IIS.
# First of all, if you run Linux, you're not booting much. What...rebooting maybe once a month?
/.ing should be drug into the street and shot for being an idiot. T
/.ing are running IIS from, what I've seen. Ever see Slate or MSN go down when /. links to them?
Some of us shut our computers off. Not every linux PC is a 24/7 server. People own laptops, shut down desktops when not in use, etc. Plus theres linux' ever-growing embedded segment. Your TiVo never gets shut off? How important is boot-time to a device like TiVo or Zaurus?
# Boot time doesn't have to be an arduous wait. Yes, on out-of-the-box distros it can be incredible, but I blame the distro, not Linux.
Yes, distros are poorly configured, and the userbase is largely stupid. Noone talks about runlevels anymore. Put "basic stuff you need to get the user going" on a lower runlevel, and "more advanced gitchy bullshit like AIM etc" on a higher runlevel. Most linux distros behave by default the way a spyware infected win98 box does, making the user wait while it starts umpteen zillion fringe services.
# If you choose to not fiddle, then you choose to have boot times that are increasing. It takes time to autoprobe everything correctly and get it set up if you're too lazy to do it yourself. Windows does it from the perspective of 'throw everything in there and take up gadzillions of RAM'. Linux says, 'I'll autosetup everything but still keep you lean'. You pay for what you get, folks.
Pure "M$ sucks rolF!" bullshit from the clueless. Windows runs a microkernel, Linux runs a monolithic kernel. They work differently. Windows loads the drivers it knows it needs (the installed ones) at boot time, linux pages the crap in and out of the kernel itself.
This is the quickest part of the boot, really. Delays come when you have dhcpcd timing out while looking for a DHCP server that doesn't exist but yet for some reason runs by default even if you have a statically configured address. Or your waiting for privoxy to load and parse its blacklists, or for squid to primp and preen its caches, etc..
# People who run IIS and then subject it to a
Most sites that stand up to a
It has more to do with being able to afford bandwidth than some magical uberneat0 perl script you found on efnet.
I don't need no instructions to know how to rock!!!!
Here some articles regarding booting Linux faster: Boot Linux faster and Reboot Linux faster using kexec Enjoy! ;)
Yeah. My desire to cut my electric bill in half is "stupid." My desire to increase my energy efficiency is "stupid." Attempting to be environmentally responsible is "stupid."
Unless you need your computer to be running 24/7, leaving it on is a tremendous waste of energy, and I think it's unethical. You're an ass.
"Update: 12/15 19:32 GMT by T: An anonymous coward adds this mirrored version of one of the bootcharts."
Have you actually bothered to check that link? It made me spit my Coke in laughter.
This is faulty logic. This is like saying "Since I can't do everything, I'm going to do nothing". That's the kind of piss-poor logic which unfortunately is contributing significantly to the current dismissive attitudes toward environmental protection. Sigh...
A strong argument to counter yours would be the simple "Well, I may not be perfect, but at least I'm better than you".
As an embedded programmer, I've got to get many startup diagnostics and initializations done in the shortest time possible (under 1 second usually) - otherwise you'd be waiting for your car to boot every time you turn on the key. Everything in parallel that can be. Dependancies are mapped out and a static start sequence is defined. Linux has a more variable set of things to do, so I'd expect a more flexible implementation. This shocks me that there is NO implementation.
It doesn't matter what MS does, every application wants load at boot time so it will respond quicker later - this just kills my boot time. Yah, a whole tray full of crap starts and I sometimes use one of those things.
Oh, man! I had a friend who, years ago, had written a special ROM for a dot-matrix printer to play a Bach four-part fugue by assigning the appropriate frequencies to the the head movements, paper feed mechanisms, and dot-matrix hammers. It was really cool!