Why Do Computers Take So Long to Boot Up?
An anonymous reader writes "Computers take too long to boot up, and it doesn't make sense to me. Mine takes around 30 seconds; it is double or triple that for some of my friends' computers that I have used. Why can't a computer turn on and off in an instant just like a TV? 99% of boots, my computer is doing the exact same thing. Then I get to Windows XP with maybe 50 to 75 megs of stuff in memory. My computer should be smart enough to just load that junk into memory and go with it. You could put this data right at the very start of the hard drive. Whenever you do something with the computer that actually changes what happens during boot, it could go through the real booting process and save the results. Doing this would also give you instant restarts. You just hit your restart button, the computer reloads the memory image, and you can be working again. Or am I wrong? Why haven't companies made it a priority to have 'instant on' desktops and laptops?"
hibernation?
~~~ Paf. Le chien.
I think a large portion of the delay is initializing and setting states for all the hardware. Reducing the kernel and libraries to an image might speed things up, but not by much. It'd be about as fast as starting up from hibernation mode.
If you want a quick start, just use sleep mode. Takes very little power and you're up in seconds.
There are two reasons why your suggestion won't work.
First, let's say that you upgrade some hardware. There will be no way for the OS to know that there's new hardware unless it goes through the hardware detection and configuration stages of bootup, which is what takes most of the time. Worse, if it doesn't do this, the system will probably just crash, as the memory image loaded will have the wrong set of drivers installed and they'll be pointing at the wrong set of hardware addresses.
Second, and this is more of a recent issue, there is a lot of work that's going into randomizing memory addresses to increase security. In the event of a security hole, randomized memory addresses make it far more difficult to take control of the machine as a hacker, virus, or worm can't use a hard-coded memory address during the attack. With a pre-built boot-up image, the memory addresses will not be randomized, which defeats a lot of the gain of this security benefit.
That said, you could just use hibernation on your computer. That is essentially the same thing as what you're asking for. A desktop is just as capable of sleeping or hibernating as a laptop is. The only thing is, if you want to make any hardware changes, you must remember to turn on the machine and do a complete shutdown first.
Also, there are companies who are focusing on bootup speed. In fact, every major Linux distro has been focusing on it for the last year or two. It's unfortunately just not that easy to speed things up without sacrificing stability or functionality.
it appears that some, including samsung do care and are looking to the future of speeding up boot times.
personally, i think this is a fantastic idea. i really love the fact that my powerbook can go from sleep mode to on in under a second. however this takes quite a bit of battery power to accomplish. wouldn't it be much better if they wrote out the memory to flash when the lid closes? then instead of sleeping, you'd be able to shut down and re start very quickly.
I think you are perhaps using the wrong OS. If you want a linux console within 3 seconds of power on, use this:
http://linuxbios.org/index.php/Main_Page
The truth is, this subject is an old one. The main answer is that it just takes time to get a DHCP lease, set up a few dozen services, and generally get all of the "junk" you need up and working without crashing the system. If your main complaint is Windows XP there are a few tuning guides that can reduce your boot time dramatically.
Pagefile initialization is my guess.
NZ Electronics Enthusiasts: Check out my Trade Me Listings
It's called "hibernate."
Obviously, you've never used a Mac. Get one, and all the "suckitude" (that's related to power management, at least) will magically disappear.
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
That's one of the things that always amazed me about OS X. You can fault it for various reasons, but by god, you shut the lid on your iBook, and five seconds later, it's in zzz mode (with a battery life of about two weeks - I tested that once). Open the lid up, go "one, one thousand..." and it's awake and ready to use. I've tried this on some of the newer Intel-based MBPs and regular MBs, and it works just as well. So Apple has it dialed. What gives with the rest of the computing world? My stupid Latitude has such a buttfargled ACPI that windows goes "Derr, BSOD" when I try to use hibernate, and of all the Linux distros I tried on it, only Kubuntu came close to doing it right. The problems it encountered at wake-up were sufficient that I finally gave up on hibernate (as well as Kubuntu - on to a better KDE distro), and simply have it blank the screen when I flip the lid shut. It's good for about four hours that way, which is usually enough.
political_news.c: warning: comparison is always true due to limited range of data type
Get an IBM ("Lenovo"). Suspend and wakeup work perfectly well on my x41 (running Linux).
same with my ibook g4, i just put the lid down and walk away. it always wakes up. on the powerbook hd, and macbooks (incl pro), sleep actually stores a hibernate image on the disk so that if you either 1) run out of battery or 2) manually pull the battery out (lets say on a long intl flight) and put in a new one. If you do a wake when you haven't killed of the power source (99% of the time really), it uses the RAM to continue operation. If you've disconnected power for whatever reason, it will wake up, present a little loading bar (incl a screenshot of your desktop if you don't require a password to unlock your computer from sleep/screensaver). Heres an Apple doc on it: http://docs.info.apple.com/article.html?artnum=302 477
I always wondered where this setting was...
"Why can't a computer turn on and off in an instant just like a TV?"
Embedded computers may be what you are looking for.
The reason why it takes that long is because its warming up. Is your brother's HDTV a plasma by any chance? It should take about same time to when shutting down since its cooling down. Its like you doing stretches and warm ups before vigorous exercise.
The CRT filament-maintenance bias trick was done for awhile in the 60s and 70s, but it was eventually recognized for the waste of energy that it is. What happens nowadays is simply that the rest of the signals are not applied to the CRT until the cathode has warmed up. This improves the tube's service life, and avoids the "expanding dot" effect that you'd see on older TVs that brought all the tube voltages up at once.
Linux on an embedded system configured for fast booting(without plug and play peripherals etc) can boot in 2 seconds or so.
Engineering is the art of compromise.
According to Anandtech, booting with the i-RAM into Windows XP takes 9.12 seconds.
CRT TV's turn fast because the tube has a bias circuit to keep it warm. When turned "OFF" most TV's burn about 5W to keep the tube warm for fast start.
No, they do not "keep the tube warm". Yes a TV might draw a few watts when in "off" mode due to the power supply for the digital logic section always being on. But just about every CRT based TV or monitor I have seen, except for maybe some real high end broadcast equipment, takes a few seconds for the tube to come up.
You definitely weren't around in the 60's and mid 70's when we watched the tube warm up and the displayed image grow from a small dot to the full size of the screen. Sometimes it would take 20 or more seconds before the picture stabilized. When you turned the TV off you got to watch the "boot" process in reverse as the display shrunk to a dot. It was a big deal when we got "instant-on" TV's.
Well yes, TVs used to take longer to fully power up, and didn't have dampening circuits to prevent CRT display after being turned off. They where basic fully analog devices, there was no logic that prevented the display of an image when the CRT was not yet in an operational state. In the 60's they would have been vacuum tube based (as in the whole TV, obviously a CRT is a vacuum tube) and taken a long time to fully warm up, and needed adjustment and retubing on a regular basis. In the 70's they would have been transistor based, and would have come up much faster, how ever they would still be fully analog and subject to the same power up and power down effects.
Modern TV's have digital control sections that can compensate on the fly for variations in the analog sections of a CRT display, and higher performance switching power supplies and fly-back circuits that come up to operating voltage much faster. But you still have at least a short wait for the CRT to come up, they are not kept on warm idle of any kind. At least not in any displays I have worked on.
I know this is probably getting off topic, but your post was marked +5 informative yet has miss information in it. Having worked on many CRT displays I just wanted to point out that the CRT is definitly not kept on any kind of warm stand-by, none that I have ever seen any way. What you are describing sounds similar to the stand-by mode in most guitar tube amps, where the heater filaments in the tubes are kept on to keep the tubes warm but the rest of the amp is powered down. I am not aware of this being done in modern CRT displays. Seems to me that if you did this it would dramaticaly shorten the CRT's life span, if the heater filaments were on 24x7x365. Someone correct me if I am wrong...
I'm suprised that no one has mentioned the Linux BIOS Project yet.
From the page:
I've got an old Apple Colorsync seventeen-inch CRT (presumably a Sony Trinitron tube, judging by the wire shadows on the screen) hooked up to my beige G3, and it takes at least fifteen seconds to come on.
Media that can be recorded and distributed can be recorded and distributed.
-kfg
It may not be done in modern displays, but about 25 years ago I had a quick-on TV where I could definitely see the orange glow of the tube filaments through the rear vents even when it was turned "off".
If it's digital tuning, it may be waiting to have enough of both video and audio data to synchronize. Digital signals as broadcast are (say) MPEG-2 data streams, with video and audio muxed together. However, the audio may predate the video by 1-5 seconds (or vice versa), and for certain tuning methods that pretty much means you have to wait until the earliest packets have their matching data from the other stream.
It gets worse with the HD signals, especially moving to the newer encodings (MPEG-4), as audio and video may be separated by up to 5-10 seconds in typical broadcast streams.
I suppose it's solvable if you have spare tuners doing pre-tuning, but that starts bumping the manufacturing cost and chip or board design costs up. There's not a huge incentive to throw the additional hardware (and resulting complexity) at it. And that would only fix tuning up/down, not entering a channel number. And if you flip too fast, you'd be right back waiting on the sync issues.
The reason it can whip through channels when scanning is because it doesn't need any audio/video sync, it just needs a valid signal.
One of the joys of going digital...
- A 'normal' cold boot of my PC takes about a minute
- 'Hibernate' takes about 20 seconds
- S3 Standby takes about 6 seconds.
One catch is that by default most systems use 'S1' mode for standby, which keeps the machine semi-alive including the CPU fan, power supply fan, etc. You can often go into the BIOS, change the default standy mode to 'S3' -- this will shut down the entire machine (including fans, etc.) but keep proviging a minimal power charge to the RAM in your machine so it won't lose its contents.
Since all the content remains in RAM that way, your machine will behave the same as if you did a hibernate, except it doesn't have to spend the additional ~25 seconds writing everything to disk first when you shut down, and also doesn't have to spend that time to read it back into RAM on bootup... Resulting in the ~6 second bootup time.
(While it takes some power for the RAM to keep its information, it is negligible compared to a complete shut down, since any modern PC still provides some power to the motherboard after it is 'powered off'. Case in point: See the LED on the main board indicating the power status on a machine that's supposedly turned off)
It's been a long time since I truly shut down my PC.
Note: the one catch is that if you do lose power to your machine while it is in standby mode, any contents that were in memory at the time will be forgotten again, and it will do a 'full' bootup next time you start. Hibernate doesn't have that problem, but takes significantly longer to shut down and boot up.
Hibernation insuffient resources exist to complete the API see MSKB 909095.
Download and install to fix (you don't even have to ring PSS any more!) IMHO, this is an update they really should push out using Automatic Updates. (They probably will when the next security bug is found in the kernel.)
Tube filaments were designed for a warm up time of 11 seconds. Since the resistance of the filaments varied as they heated, it was important, in a series string where the low voltage filaments operated from the 120 line, to keep the filament heating uniform so the voltage dropped across each tube stayed relatively constant as all the tubes got up to operating temperature.
A QD_005
I agree with the parent that there were sets where the filaments stayed on all the time for an "Instant-On" effect. Actually it was an always-on situation, but the B+ and high voltage wasn't applied until the set was "turned on". See http://www.repairfaq.org/REPAIR/F_tvfaqd.html#TVF
"Do the Right Thing. It will gratify some people and astound the rest." - Mark Twain
I guess you're too young to have experienced EISA. That's what you are asking for... changes to the system take explicit configuration processes. There's no plug-and-play at all. Just plugging in a new card without configuration means it's effectively not there -- and in some systems, it wouldn't even power the slot until it was configured.
Nobody liked EISA.
I support a large number of HP DL380s across a large GAN; they can take a few minutes to boot and for all services to start up. Many of them are frequently shut down due to extended power outages caused by tropical electrical-storms in the area. Other sites turn off their generator every night, so the server has to be shutdown.
:)
I don't much care about the downtime, but clients are faced with an outage of several minutes every time the server so much as reboots. I'm sure everyone here knows how people get when there's a 5 minute delay before they can start repeatedly (and optimistically) clicking the 'Check Mail' button. I'm sure they'd love the faster boot times
I don't relish the idea of populating a 16GB hibernation file - even on arrays of SAS drives. It might be easy to trivialise this question in a workstation context, but it has its relevance.
It's called "auto end task", and it's just a couple settings in the Windows registry. I've been using it successfully for a VERY long time now, and it works exactly as you'd want:
http://www.winguides.com/registry/display.php/199
If the program doesn't end (30 seconds) after it gets the kill signal, it gets killed without requiring you to be there to hit the button.
Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
Flash is as fast as you want to pay for. Do you think those solid state hard drives that use fiber channel and sell for $15,000 read at 7MB/s? Heck no.
The SanDisk Ultra IV cards are another example. They do about 40 MB/s. It's basically a RAID stripe across the internal flash chips.
Usually a read triggers a write since there is the Last Acces Time attribute to update. Under windows it is driven by the NtfsDisableLastAccessUpdate registry parameter, under UNIX it's the noatime mount parameter.
That's perhaps one cause of your filesystem usage increase.
http://www.newegg.com/Product/Product.asp?Item=N82 E16822116156
Or maybe you are.
--S (not that you'll find SAS in laptops, but hey, this is slashdot.)
-- sigs cause cancer.
Bad idea. Journaling filesystems only guarantee a consistent filesystem after a sudden power off. They do not guarantee consistent data. Most don't even journal data, just the metainformation that goes with it. Journaling is important because an inconsistent filesystem can destroy huge amounts of data at once, but inconsistencies in the filesystem aren't the only worry when you stop programs without giving them a chance for a clean shutdown.
It should not take that long for your desktop to work. Download the Startup Control Panel applet and disable everything that's attempting to boot. This tool is really nice as it has a tab for every way for a program to autostart itself.
I use then when writing auto-install scripts. For each app that tries to autostart (which is absolutley unnacceptable for any application to do) I find out how that particular one does it and disable it after the install/upgrade.
"It ain't a war against drugs.it's a war against personal freedom" --Bill Hicks
Why haven't companies made it a priority to have 'instant on' desktops and laptops?
They have. It's called the Mac.
Seriously, I had heard it before, but it was still astonishing to watch when I got my MacBook Pro this year. I was used to long boot times in both windos and Linux. I was used to long times going from hibernate and even sleep to activity.
OSX boots in less time than XP on the same hardware takes to awaken from hibernate. When it's sent to sleep, OSX is back before I've opened the lid completely. It's not quite instantaneous, but it's as close as I need.
OSX still needs to do a bunch of things at boot, and after login, and there is certainly the possibility for caching (as you suggested) or other speedups. I'm sure they will happen, because as I see it, Apple is currently the only company that actually cares about this stuff.
Assorted stuff I do sometimes: Lemuria.org
That's designed for small form factor servers.
2.5 inch form factor does not automatically mean "laptop drive".
Please show me a laptop that uses SAS instead of SATA or PATA.
retrorocket.o not found, launch anyway?
Microsoft has a free utility called bootvis that visually shows you were your computer bootup is spending it's time. You can download this utility at: http://www.softpedia.com/get/Tweak/System-Tweak/Bo otVis.shtml
This utility also has some whitepapers with advice on what you can do to speed up your boot times.