How Kernel Hackers Boosted the Speed of Desktop Linux
chromatic writes "Kernel hackers Arjan van de Ven and Auke Kok showed off Linux booting in five seconds at last month's Linux Plumbers Conference. Arjan and other hackers have already improved the Linux user experience by reducing power consumption and latency. O'Reilly News interviewed him about his work on improving the Linux experience with PowerTOP, LatencyTOP, and Five-Second Boot."
Not only is this an impressive accomplishment, but if this can be applied generically to most distributions then it should present an excellent opportunity for advertisement. Showing how you can boot, check your email, read the latest news, and be done with all you need to have done while a fellow Vista machine is still booting says a lot. Even if we can get most distributions down to 15sec average, it's a huge leap. Grats to these guys.
I see a lot of comments on the LWN article of people talking about starting services after the user sees the desktop as cheating. However, I ask, does this really all matter. I'm not sure how everyone else uses their computer but I only need to boot my Linux machine about once every 30-60 days. I don't need to dual boot like I did back in say 2002 and comparitively, the amount of time it takes for Linux and X to start up are practically irrelivent. I can imagine laptop users may feel much differently about this, but I thought that was the point of being able to suspend/hibernate.
One thing that worries me is that a focus on ensuring a quick boot at the expense of a potentially less stable system is not a good thing. Fortunately however quick booting is not something that Linux requires, its something that distributions can decide to do or not, which is one of the strengths of the open source/Linux way.
Why?
I use a 700Mhz T20 think pad with ubuntu on it. It works great but it is SLOW.
Is anyone working on a high speed distro based around these tools and ideas that might help me out?
I do not want to invest in a new laptop because this is for work. Chances of it getting stolen or dropped are high.
I have to return some videotapes...
I'd love to see linux in general have better boot times. My install of ubuntu on my PC takes about 2.5 minutes while XP is up and running in about 1.5. On my laptop it's the reverse (windows taking forever, opensuse being relatively quick). As far as 'cheating' by loading services at the login screen, GO FOR IT! It's not cheating if it's making things better for the user, it's called being more efficient.
I somehow doubt they were involved since they went out of business six months ago.
At least the boot speedup. Slashdot-ed already.
You are being MICROattacked, from various angles, in a SOFT manner.
ROM was a wonderful thing. Simply flip the switch and the software is already loaded into memory. There was about a second or two of initialization (on a ~1MHz 8-bit processor!) and you were ready to go. It's still possible to create such fast boot times using ROM. Especially with re-flashable ROM. These sorts of boot times are seen in systems like Game Consoles.
Unfortunately, desktop OSes are so complex that using re-flashable ROM adds a great deal of complexity and cost to the design. Thus you aren't likely to see any systems keep their OS in Flash. Compounding the problem is that modern OSes are rarely designed to boot from a ROM configuration and would require substantial changes to boot properly.
Javascript + Nintendo DSi = DSiCade
My Commodore 64 booted many times quicker than that and was probably far more useful.
Well, it did run the popular games of it's day...
Sometimes I become nostalgic for the days of the C=64 and think about getting back into it all again with some of the groups that are still out there but I stop and catch myself, do I really want to waste all those hours writing demo code for the 120 people who are likely to ever see it?
Dedicated Cthulhu Cultist since 4523 BC.
And no cheating. "Done booting means CPU and disk idle," Arjan said. No fair putting up the desktop while still starting services behind the scenes. (An audience member pointed out that Microsoft does this.) The "done booting" time did not include bringing up the network, but did include starting NetworkManager.
It seems to me that the five seconds could concievably be brought down to virtually zero with cheating! My work PC slows down so much sometimes from antivirus, inventory controls, etc that it takes longer than that to add a record or open a table in an Access database. With a keyboard buffer you could stick a fake desktop and login in, and have the real desktop and login take over before the user finished typing in his password.
Free Martian Whores!
...just don't try to get something off of some sort of magnetic storage medium.
A Pirate and a Puritan look the same on a balance sheet.
1. 5 second booting Linux partition with a few basic programs. 2. ??? 3. TASTY CHOCOLATE
My stepfather still has an old Pentium III laptop with Windows 95 running on it. Booting the laptop to read an E-mail takes around 20 minutes. His advice to anyone who wants to use it, "switch on the PC, do something else like have a bath, do the lawn, read the newspaper, or have a coffee, and the PC will be ready to use before you know it".
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
At first glance, it seems like a strange thing to focus on. Boot time? But after you ruminate on it for awhile, you realize that people just assume a long boot time (especially Mac users-LOL).
Obviously, it shouldn't be something that takes top priority, like support for 3D accelerated graphics cards, but it is something that can enhance everyday use for everyday users! Now, if only they could get the keyboard numpad and the phone numpad to face the same direction!
(-1, Raw and Uncut is the only way to read)
O'Reilly News recently interviewed Arjan van de Ven about his efforts to improve Linux performance and reduce power consumption. Arjan works for Intel in the Open Source Technology Center. This interview is approximately 30 minutes.
One of the projects you're probably most known for in the past couple of years is the PowerTOP utility, which I found very fascinating. Looking at some of the gains you've made over the past 18 months, it seems like Linux-based devices are saving a lot more power than they used to. What do you consider the big successes in the past year and a half?
To be honest we fixed effectively the entire Linux desktop space. It's not--PowerTOP is more--it's not just what we fixed with PowerTOP is not individual pieces. We fixed everything. For me that was a success.
Is that everything in terms of not just desktop but servers as well?
Yeah; we fixed not just Evolution. We fixed Firefox; the thing with Firefox was that it wasn't one thing that was broken. Everything had problems and we had to fix all of it. So for me the success was how quickly everything got fixed; it was just amazing.
In this context you consider fixed--everything is no longer broken in the same way or--?
Everything is no longer keeping the CPU out of idle basically.
Do you have a reference machine? I guess I'm asking what's your benchmark for this, a particular software configuration stack or particular type of machine, or are you willing to say it's pretty much every Linux based machine out there?
I'm looking at several machines--my own laptop but to be honest, what runs on my own laptop is what I care about most. At least that's where I got more battery life, this is where I see the changes. I tend to run a quite rich environment on my laptop but I also look at service. We look at all kinds of machines and we see the same trend everywhere in that all the various pieces of it--never polling or keeping the CPU up. They all got fixed.
In fixing this, is there a component of education, for example, saying "Instead of doing a busy wait on a select loop or continually polling you should set a kernel timer and wait for that to call you"?
That's part of it but the biggest thing is that you had no visibility. Just two days ago at IDF I spoke with a developer of the GNOME desktop and he said, yeah; when I saw it happen I fixed it in 10 minutes, but you don't know it's there until you see it from PowerTOP. Adding the visibility turns out to be enough for people to start fixing it. They know how to fix--how to not poll most of the time.
You can't fix something you can't measure.
If you don't see that it happens you don't know it happens and you can't fix it.
Are you getting the same sort of results from other projects you run into?
GNOME was there but it's almost everybody goes oh yeah; we should have not done that; either they fix it themselves or some--a lot of people give them the fix and in general it's like oh yeah; we shouldn't have done that. Unless you see what's happening you don't know what to fix, so the biggest thing that PowerTOP did was add visibility. We can see under the hood what's going on and then we can fix it. And quite often the fix is very simple.
It sounds then, maybe I should be able to say that just about everybody is happy to see this. Is that the case?
Yes; people--all the developers I've worked with--and that's quite a few--they all go oh yeah. Thank you for the fix; we should have no problems in the first place. We didn't know this; it's fixed now. In the beginning I did most of the fixing when PowerTOP was very new and now days the people do it themselves. The developers learn
This is effectively related to an earlier Slashdot story about the changes Mandriva are making to speed up boot on their distro
In an attempt to head off the inevitable here's a link straight to the existing
Interesting but how useful, really? thread (Yes! No! I have a Mac! I use suspend! I use hibernate! Suspend is broken for me! Hibernate is broken for me! Hibernate takes too long with 500Mbytes! Why do Linux people always say change your habits? Etc.)
What I really want to know is what can be done about usb-storage and pciehp (PCI Express hotplug). I have an EeePC 900 using a kernel with Arjan's fastboot patches and with USB entirely disabled and pciehp turned off the kernel mounts the root filesystem in just over one second. With USB on and pciehp in use it's over 5 seconds....
Finally here's a link to Arjan's slides from the presentation about 5 second boot in PowerPoint format and a YouTube video of the 5 second boot on an EeePC 901.
I'd love for my MythTV box to boot faster. Since it's not silent (though the TV fans are louder, the TV isn't always on either), I leave it turned off, and the long boot time makes it less appliance-like.
I don't need to dual boot like I did back in say 2002 and comparitively, the amount of time it takes for Linux and X to start up are practically irrelivent. I can imagine laptop users may feel much differently about this, but I thought that was the point of being able to suspend/hibernate.
Unless you end up stuck with a machine whose suspend/hibernate sequence is defective. On various computers running various operating systems, I've had no video, or no audio, or no network, or no mouse after coming out of sleep.
You don't want something heavy like Ubuntu on that thing.
rooted in 10.
Speed is great and all, but is it secure?
One of our competitors trademarked the term "hypothesis". From now on, we will call them "boneheaded ideas".
desktop OSes are so complex that using re-flashable ROM adds a great deal of complexity and cost to the design.
Flash is almost dirt cheap. $10 buys you more Flash memory than most systems have RAM. Just save the state of a freshly booted OS in Flash and when the computer starts, load just what you need to access flash and handle page faults, then start as if you've already loaded everything into RAM and start copying from Flash to RAM. Whenever a page fault occurs, load that page from Flash next. This way you don't need to wait until everything is copied to RAM.
TinyME (my favorite) which is based on PCLinuxOS which is based on Mandriva
Vectorlinux based on Slackware
Mepis based on Debian
Or just sudo apt-get xubuntu-desktop
Have you tried Xubuntu or a different windowing manager? That could be a start.
Mine stays on 24/7 because I do Folding@Home. Or should I refrain from using energy that can help find cures for disease because our environmental overlords say that's a bad thing?
If I don't fold I use less energy. If I don't fold more people will die since cures won't be found. Fewer people equals less CO2. It's a win-win for our environmental overlords if I don't fold. But it's a win for the human race if I do.
It's somewhat rude to republish articles without even asking permission.
how to invest, a novice's guide
I'm running a few Ubuntu boxes and I just "apt-get install powertop" and fired it up.
It found a few items on one of the older boxes and one item on the newer boxes.
So I followed the simple directions "press U to enable USB sleep" or something like that and now the app says that my boxes are waking from idle 5 times a second.
Whether that is good or not ... I have not noticed any increase in performance. But it seems to be applicable to my generic Ubuntu systems.
English no understand?!
"do I really want to waste all those hours writing demo code for the 120 people who are likely to ever see it?"
You'd be in good company if the number and statistics of projects on SourceForge is any indication.
"As God is my witness, I thought turkeys could fly." A. Carlson
http://www.youtube.com/watch?v=yYfoCe6q28A
TRON: The Most Popular Operating System in the World
Note that nowhere in the article is there any mention of the processor, its speed or the number of cores. There's also not one word about how much RAM the machine has. With enough RAM, you can load your entire system into a RAMdisk and even if you don't have SSM access time becomes (effectively) zero. Also, of course, a 2Ghz quad core machine is going to boot faster than a 1 Ghz single core. I'm not saying they're cheating or anything, but these specs are something you need in order to evaluate what they've done, and they're not telling us.
Good, inexpensive web hosting
Its ok. He asked me.
I said it was OK.
<hint><hint><nudge><nudge>
I find that if a PC is dragging its feet it's either a memory or harddrive problem. I was doing some development on a 1.7Ghz system with a really old 40GB drive and it took forever to get the program loaded. I popped in a brand new harddrive and the program loads in a few seconds. The problem was largely getting information from the disk.
If you decide to just get rid of the laptop, get an external enclosure and use the drive as a backup drive for any other system.
If you've got less than 128MB of ram you may want to upgrade. Win95 doesn't need it but you apps might. Not enough physical ram can lead to increased drive usage which results in your drive starting to perform poorly.
Or, you could just be a good stepchild and spring for the $200-$400 for a new computer (either parts or prebuilt) for your stepdad for Christmas.
Work Safe Porn
I like this print layout soo much better!
http://broadcast.oreilly.com/print/33520.html
Okay, so I kid. But when your have to wait every morning for your bogged-down workstation to load all sorts of services and client side junk that IT installs on their XP boxes, you get tired of it very quickly. The system is so sluggish and unresponsive for 3-4 minutes after login that I can usually brew a cup of coffee before clicking on the start button actually has any effect. That's 3-4 minutes during which I could be reading Slashdot, er, I mean doing something productive.
There is absolutely no reason why a 3-year-old computer should take 6 minutes from BIOS to the point where I can actually click on a menu item in Firefox and get a response that is not delayed 5+ seconds. I eventually got so annoyed that I partitioned the drive and installed Ubuntu. Just don't tell anyone...
My Vista system has 4 GB, and still takes a painfully long time to boot. I don't know what magic your system uses, but I doubt that it's fast compared even to a non-optimized Linux box.
To speed up startup time, I hibernate my system instead of shutting it down when I'm not using it. But even that's painfully slow — because of that 4GB memory that needs to be restored.
Vista introduces something called hybrid mode, which is like sleeping, only safer, because there's also a hibernation image, so the state of your system isn't lost if there's a power failure. Not practical with laptops, alas.
I've administrated network authenticated openSUSE machines and they definitely benefited from booting faster (compared to older versions of openSUSE) - after all the sooner the kernel finishes the sooner you can start waiting for that DHCP lease...The key is that the moment someone says they want to run NIS/LDAP/NFS you just say "start everything that doesn't depend on the network while you wait for the network to come up". In your case NIS/NFS/autofs/xdm DO need the network so they have to wait until that DHCP lease is acquired. No functionality need be lost but the dependencies/order of certain events need to be maintained (this is what tools like Upstart are about).
Strangely enough in one of the article's comments you'll find that Arjan isn't advocating a parallel boot:
Ultimately I doubt people are advocating all of this work for your typical network workstation. For starters such systems don't tend to be using solid state disks with unattended login...
I have to wonder about all the video stuff. Why can't you set the video mode in the kernel? Is X really the best solution? It always struck me as a little heavyweight for what it is (as far as I can see, a windowing system is essentially a reentrant API for drawing text and overlapping boxes). For most peoples needs I'm sure you could trim it down a lot and maintain all of the functionality that 99% of users expect.
Another thing I'm curious about is whether initrd might make sense if running using disks rather than flash.
Exactly. I haven't used any of the Ubuntu variants (yet) so YMMV, but I have Slack running on a 700MHz Celeron desktop at home. KDE and Gnome were very slow, so I installed BlackBox and have been very happy ever since.
MCSE? No, sir...I don't do Windows. Yes, I am an idealist. What's your point?
Not quite sure what happened in my previous post but here's the link to the Interesting but how useful, really? thread (Yes! No! I have a Mac! etc) from the Mandriva story.
Um now letsee er how to make up for the snafu... Here's a link to Moblin project download page that is going to integrate some of this work that the Intel engineers like the now legendary Auke Kok have been working on.
When you're booting off a USB device you often seem to need scripts in initrd to keep retrying to mount the rootfs until it appears...
that seems like a lot of time-consuming legwork to do something the operating system would normally do by itself in under a minute
must spend so much time and effrot researching on reducing the boot process on any OS, you must have some serious issue with your box, and you should be looking at that instead. For Windows, I can understand, as rebooting is very common when installing certain software and drivers, but for Linux? I've updated hundreds of Linux boxes without the need for a reboot.
TOP DSLR Cameras Reviews of the top DSLRs
...and more about battery life. Less things waking up (or arranging to wake up at the same time) means your computer sleeps for longer and the longer it sleeps deeply the less power it uses.
Personally, I've sometimes found XFCE to be slightly slower than Gnome or KDE.
Years ago I spent quite some time to reduce booting time. I was not able to get anywhere close to 5 seconds (damn old PIIIs), but I was able to shave off a considerable fraction of time by doing everything the old way: Custom kernel. Actually, things were much easier in FreeBSD where I could edit the configuration file as opposed to jumping through multiple primitive interfaces provided by Kernel. I gave up my hobby because finally I started getting paid enough to buy faster hardware. Plus, my girlfriend was not to keen on spending time watching me recompile kernel.
Here is a thought: Compile kernels specific for the users at your company and increase productivity. Otherwise, guys like me will continue enjoying 20 minute boots while we drink coffee :)
That depends on the application. A desktop PC can probably take 30 seconds for booting up and not be annoying, but a digital satellite receiver should be instant-on. Notebooks should also boot quickly. Instantly resuming from cold-boot or last-state hibernation could do the trick without wasting battery life on volatile memory. As embedded systems become more powerful, finding ways to instantly start complex systems becomes more important.
Since one of the main ideas is to put everything + kitchen sink drivers into the kernel that means that a patch to one of the 800 drivers that I don't need is a giant patch of the kernel. I'll wait a few extra seconds.
The USB parallel initialization work sounds fantastic (and thanks for replying on Slashdot - we don't see many big shot devs here)!
As for pciehp, you can't disable then enable the wireless card and expect ath5k not to lose its marbles unless you boot with pciehp_force=1.
With regard to initrd, I assume having support for it configured into the kernel doesn't slow down the boot. Rather it's the actual use of it that does right?
I'll be interested to see just how close to 1 second for the kernel this system gets with devices enabled (as mentioned its currently at 5). Just for reference here's a big snippet of its dmesg:
[ 0.000999] Memory: 1026236k/1039872k available (2576k kernel code, 12968k re .init : 0xc046e000 - 0xc04a9000 ( 236 kB) .data : 0xc0384150 - 0xc046bdd0 ( 927 kB) .text : 0xc0100000 - 0xc0384150 (2576 kB) ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
served, 927k data, 236k init, 130568k highmem)
[ 0.000999] virtual kernel memory layout:
[ 0.000999] fixmap : 0xfffac000 - 0xfffff000 ( 332 kB)
[ 0.000999] pkmap : 0xff800000 - 0xffc00000 (4096 kB)
[ 0.000999] vmalloc : 0xf7ffe000 - 0xff7fe000 ( 120 MB)
[ 0.000999] lowmem : 0xc0000000 - 0xf77fe000 ( 887 MB)
[ 0.000999]
[ 0.000999]
[ 0.000999]
[ 0.000999] Checking if this processor honours the WP bit even in supervisor mode...Ok.
[ 0.000999] SLUB: Genslabs=12, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.001016] Calibrating delay loop (skipped), value calculated using timer frequency.. 1800.21 BogoMIPS (lpj=900106)
[ 0.001043] Security Framework initialized
[ 0.001063] Mount-cache hash table entries: 512
[ 0.001318] CPU: L1 I cache: 32K, L1 D cache: 32K
[ 0.001324] CPU: L2 cache: 512K
[ 0.001330] Intel machine check architecture supported.
[ 0.001338] Intel machine check reporting enabled on CPU#0.
[ 0.001350] CPU: Intel(R) Celeron(R) M processor 900MHz stepping 08
[ 0.001361] Checking 'hlt' instruction... OK.
[ 0.005636] Freeing SMP alternatives: 0k freed
[ 0.005640] ACPI: Core revision 20080609
[ 0.021353]
[ 0.031995] net_namespace: 288 bytes
[ 0.031995] NET: Registered protocol family 16
[ 0.031995] No dock devices found.
[ 0.031995] ACPI: bus type pci registered
[ 0.031995] PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255
[ 0.031995] PCI: Not using MMCONFIG.
[ 0.032002] PCI: PCI BIOS revision 3.00 entry at 0xf0031, last bus=5
[ 0.032006] PCI: Using configuration type 1 for base access
[ 0.035375] ACPI: EC: Look up EC in DSDT
[ 0.047947] ACPI: Interpreter enabled
[ 0.047956] ACPI: (supports S0 S1 S3 S5)
[ 0.047980] ACPI: Using IOAPIC for interrupt routing
[ 0.048105] PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255
[ 0.051277] PCI: MCFG area at e0000000 reserved in ACPI motherboard resources
[ 0.051282] PCI: Using MMCONFIG for extended config space
[ 0.062285] ACPI: EC: GPE = 0x18, I/O: command/status = 0x66, data = 0x62
[ 0.062291] ACPI: EC: driver started in poll mode
[ 0.062512] ACPI: PCI Root Bridge [PCI0] (0000:00)
[ 0.062669] PCI: 0000:00:02.0 reg 10 32bit mmio: [f7f7fffff7f00000, f7070580f70704e8]
[ 0.062678] PCI: 0000:00:02.0 reg 14 io port: [ec070000ec00, f707059cf70704e8]
[ 0.062686] PCI: 0000:00:02.0 reg 18 32bit mmio: [dfffffffd0000000, f70705b8f70704e8]
[ 0.062694] PCI: 0000:00:02.0 reg 1c 32bit mmio: [f7effffff7ec0000, f70705d4f70704e8]
[ 0.062731] PCI: 0000:00:02.1 reg 10 32bit mmio: [f7fffffff7f80000, f7070980f70708e8]
[ 0.062825] PCI: 0000:00:1b.0 reg 10 64bit mmio: [f7ebbffff7eb8000, f7070ce8f7005948]
[ 0.062870] pci 0000:00:1b.0: PME# supported from D0 D3hot D3cold
[ 0.062877] pci 0000:00:1
CP/M was probably OK but my Zilog-based PC had floppies only so it sucked too.
MS-DOS 3.0 was up and running in 1-2 seconds (assuming you had a hard drive and empty config.sys and autexec.bat).
Then MS rewrote DOS in that punky and slow new language "C" and since then everything went down. The next thing you see is that HIGHMEM.SYS driver taking your precious memory out of 640KB for the promise of semi-useless XMS memory for overlays. Oh well...
Now my kernel sits during boot on 4GB RAM looking for un-present USB devices and waiting for eth0 to figure out DHCP.
I guess Bill Gates was right and 640KB is right amount for everybody so OS would not get confused with all those amounts of bits laying around.
Kernel modesetting is kinda here for Intel and ATI graphics cards (in Fedora) but it's still stabilizing.
So the answer to your first question is: soon you will be able to set the final video mode in the kernel. As for your second question, doing it in X is not the best solution (as doing it in the kernel means less flickering when X starts, the ability to support graphical kernel panics and nicer virtual terminal switching).
We are the ones responsible for any damage to the planet. Fewer of us means better for the planet. There are actually people out there getting sterilized so they won't produce offspring that would produce more CO2. Personally, I applaud their efforts and wish more like-minded people would do the same.
Too much of the Global Warming (sorry, "Climate Change" so they can always be right) environmentalism these days is more anti-human than pro-environment, that is when it's not about pure greed. The ones who try to strike a balance tend to get denounced by the environmental movement.
And, yes, I'm an environmentalist (recycling, CFL in the house where it works, small-engine cars, responsible hunting, etc.), but the current quasi-religious movement of environmentalism would probably denounce me as a heretic or even apostate for not subscribing to the established dogma.
Get more RAM (cheap), and install xubuntu-desktop, boot to xfce. That's about all you can do to make it faster other than using lighter-weight tools, like using kazehakase instead of Firefox if you can get away with it, etc. (kazehakase is in the *buntu repositories)
My blog. Good stuff (when I remember to update it). Read it.
I reboot my laptop only when the kernel get's a security fix. The rest of the time I suspend or hibernate. I really don't care if that takes 40 seconds once a month or so.
It's still possible to create such fast boot times using ROM. Especially with re-flashable ROM. These sorts of boot times are seen in systems like Game Consoles.
Uhh, if I turn on my Mac Pro and my Xbox 360 at the same time, I'm up and running with OS X a few seconds before the 360 starts to load the game. I for one hope my computer DOESN'T have boot times like a console.
I suspend or hibernate most of the time. I reboot my laptop only when the kernel gets a security fix. I don't care if that takes 40 seconds.
http://bp0.blogger.com/_Q8OWC_n6WMU/SGQ3FBUapPI/AAAAAAAABEg/60TP2sxd_8I/s1600-h/bear+arms.bmp
vi +
I use Ubuntu 8.04 with Fluxbox on an eee pc 700, which isn't that much faster than what you've got. Booting takes a bit of time, but once you're in it's much faster than Gnome.
Seriously?
WTHolyF did you do to that poor Xbox 360? Or are you running a hacked one with some weird custom software on it? Or maybe you have the crappiest game on earth in the drive, and that's the delay? Or are you using "Resume" on your MacBook instead of actually rebooting it?
I can guarantee that that is not at all typical. The Xbox 360 should be well into the game's splash before 5 seconds are up. No way in hell any release of OS X on any hardware boots that fast.
Comment of the year
The real lesson from all this load time buisness is that our compilers still really really suck. I mean the truth is that when you boot your computer there is only a tiny bit of logic that really needs to go on because only a small amount of stuff changes between any two boots (and less between a boot and a power off).
A truly well desgined system wouldn't care about arbitrary boundaries between this program and that one, it would hunt down optimization opportunities everywhere and automatically reduce boot up to an extremely lean and quick procedure without adopting the harms of merely loading an old image.
I mean to take one example a substantial amount of time during start up is probably spent searching for and then parsing configuration files. So long as their is no cross cutting OS level JIT compiler that can deal with both system IO code and application code there isn't much we can do about this without massive investment of effort. However, in principle there is no reason that the system couldn't simply read the preparsed data from a cache and jump directly to the real substantive logic that needs to be done on boot (checking out network conditions, looking for changed hardware, dealing with changed configs)
If you liked this thought maybe you would find my blog nice too:
While I defend anyone's right to arm bears, I fail to see how we managed to get on to this topic, even browsing at -1. It seems far removed from boosting Linux boot speed.
I find it surprising how long it takes the friggin' BIOS to load Grub on most "modern" computers.
This is one reason why I still prefer to use LILO, even though it no longer appears to be very fashionable. At the risk of sounding curmudgeonly, I fail to see any real advantage to using grub at all, and usually find LILO less trouble.
Sure, I am aware that you can edit boot parameters at will. This, I admit, can be just as well, since every single distro I have tried that uses grub has without fail selected the wrong boot disk in the config file by default, so I invariably have to edit the boot param to get a kernel image loaded.
But what I meant to say before I digressed, is that I would be a lot more content with these boot-races if they would mention how they are getting there. For instance, are we timing from power-on, or end of POST? What services are we loading? If a computer doesn't have to do anything except load a tiny kernel, it won't take long to boot, but it also won't be very useful. Are be booting all the way to X11 or just to a tty? And so on. My boot time is nothing like 5 seconds (probably closer to 10 times that) but I have a feeling my idea of a useful computer might be a bit more comprehensive than in some of these benchmarks.
Okay, the opposite question applies: I have a top of the line laptop (for now). What should I be running on it? And if you say Gentoo, give me some kind of make.conf options. The thing is a Centrino 2.
Note: it is called himem.sys.
Article (includes YouTube video taken from my mobile phone).
Now we can experience inconsistent GUIs and occasionally-working copy&paste only 5 seconds after turning on the Linux box, and consume less power in the process. Kudos!
isn't gentoo designed around compiling just what you need and cutting the cruft?
IranAir Flight 655 never forget!
...and if you were slightly better informed before making your comments you'd realise that Linux also supports Hibernate functions as well.
Gentoo Linux - another day, another USE flag.
Hibernation is not that much good in linux. Moreover I can see lot of kernel bugs in booting up my v3000. Even if kernel boots faster,wm pulls down. -- Smith, http://www.samudhai.com/
I have two options for you: Mandriva or openSUSE. I have both of them installed and of the two I would prefer openSUSE as it just feels so much better than any other Linux distro. Check the hardware requirements before installing:
openSUSE Hardware Compatibility List
Mandriva Hardware Compatibility List
When it comes to government policy, absurd-sounding jokes tend to come true. Somewhere out there, some bureaucrat or aspiring politician would think that is a good idea.
My main use case for USB booting is for distro installing where I wouldn't care about the startup speed. The second case was booting from an SD card on my EeePC (where the SD card reader is connected to the USB bus). I guess diskless workstations also fall into this category but you'll have other speed bottlenecks to worry about. Not common cases...
Perhaps I should have said that I've been using some (all?) of the fastboot patches already. I compile kernels from linux-tip which I believe includes fastboot...
People need a firearm because of me. I don't care what your laws are, my money can buy anything. If you don't like it, go live somewhere else. I don't have to move because there are more people that think like me than there are your kind. United States is crap today because it strayed from the neo-royalty that the Queen inspired into China. I laugh at how U.S. people don't get along with eachother. You idiots don't even get along, and can't even stand the smill of your excrement and dead. You eat your body-weight in bread every year because you are too lazy to grow fruit gardens in your cities. The idiots you call parents are the ones that grew-up in disco halls on drugs, and have no inspiration but compel their thoughts on their children without reason. Like you idiots have somthing inheritable other than the STD created for you. Just die, I don't need a gun to accomplish that. Watch the grandparents die in the comforts of their prepayed living quarters, watch your parents die of early complications, watch yourselves become the first generation to die without war at an everage 38 years old, watch your children die in their early 20's from illness of your filthy manufacturing. My country has a life expectancy of 40 and we do all USA's manufacturing. You consume the crap more than we do, and my poverty doesn't let me own nothing more than a utility knife. Ha ha
Come on, that's BS. The Xbox 360 splash screen alone takes almost that long to play.
Mr. Period: Nine is the one that's right by ten!
Nine: One day I will kill him. Then, I will be Ten.