blizzardtweaker Posted January 6, 2005 Share Posted January 6, 2005 i'm not sure if this is possible, but i'm sure everyone noticed the slow bootup time of linux, even without hotplug. i just came up with a theory that might beable to significantly decrease bootup time. I noticed during bootup, linux runs one command at a time (even with bootsplash or initrd), however in x server, u can run multiple 'konsoles' and terminals, doing many differnt times at one time. So, if i'm not mistaken, bootsplash requires a small startup ram disk, and 'runs' x, so why not include a 'terminal' in that ram disk and when running bootsplash, run multiple terminals in the background, each performing only a portion of the booting all at the same time? what do ya'll think? possible? Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/ Share on other sites More sharing options...
markwolfe Veteran Posted January 6, 2005 Veteran Share Posted January 6, 2005 IBM has written something up on this before. http://www-106.ibm.com/developerworks/linu...nxw09BootFaster Also remember that Linux fully detects your hardware at boot, where Windows takes shortcuts and makes assumptions that it is running on the same basic chipset archetecture as it was when it was installed. It won't boot if you move the hard drive from one PC to another with a very different motherboard. This is one speedup to avoid. Plus, I don't find that Linux boots up that slowly. It seems pretty fast on my box. My wife may get her XP login prompt faster (she is running a faster CPU than I have), but stuff is still loading and her system is pathetically slow when she logs in immediately. It takes a bit longer for her to have her system running at 'normal' speeds. It would be nice to see improvements made all the time to Linux, even in the infrequent boot-ups. And, using a parallel startup of whatever apps/services that you can would be a good thing, I think. Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/#findComment-585242813 Share on other sites More sharing options...
LordHatrus Posted January 6, 2005 Share Posted January 6, 2005 Yeah, the linux bootup is much less "parallel" than windows', for portabliity/compatiblity reasons. But if you need a fast bootup, why not try hibernating to hard disk, or going to a standby mode, and leaving linux in the RAM? Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/#findComment-585243041 Share on other sites More sharing options...
ichi Posted January 6, 2005 Share Posted January 6, 2005 There're some tricks to speed up the boot process. These ones are based on a Gentoo linux distro installation, but should work for other distros as well (maybe with slight changes): 1) run modules-update only if necesary Edit /etc/init.d/modules and look for this: ebegin "Calculating module dependencies" /sbin/modules-update &>/dev/null eend $? "Failed to calculate dependencies" put this instead: if [ /etc/modules.d -nt /etc/modules.conf ] then ebegin "Calculating module dependencies" /sbin/modules-update &>/dev/null eend $? "Failed to calculate dependencies" else einfo "Module dependencies are up-to-date" fi 2) Parallel mounting of locals Edit /etc/init.d/localmount and look for this line: mount -at nocoda,nonfs,noproc,noncpfs,nosmbfs,noshm >/dev/null put this line instead: mount -aFt nocoda,nonfs,noproc,noncpfs,nosmbfs,noshm >/dev/null 3) Run env-update only if necesary Edit /etc/init.d/bootmisc and look for this piece of code: if [ -x /sbin/env-update.sh ] then ebegin "Updating environment" /sbin/env-update.sh >/dev/null eend 0 fi put this instead: if [ -x /sbin/env-update.sh ] then if [ /etc/env.d -nt /etc/profile.env ] then ebegin "Updating environment" /sbin/env-update.sh >/dev/null eend 0 else einfo "Environment up-to-date" fi fi 4) Start services in parallel Edit /etc/conf.d/rc and replace this: RC_PARALLEL_STARTUP="no" with this: RC_PARALLEL_STARTUP="yes" Other usefull tricks to improve performance: -Use hdparm to check that you're actually taking advance of your HD capabilities. -Use swsusp2 to suspend your computer instead of halting (if you feel like doing so). -Use the Native POSIX Thread Library instead of the standard LinuxThreads, as the former can be 4x faster than the latter when it comes to creating new threads. I've applied the 4 points above, and it takes now less than 1 minute to reboot (X session -> reboot -> X session). Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/#findComment-585243393 Share on other sites More sharing options...
hornett Posted January 6, 2005 Share Posted January 6, 2005 ^^ I use those settings on my Gentoo install, and boot up is very fast indeed (also see bug 69584). Also remember that Linux fully detects your hardware at boot, where Windows takes shortcuts and makes assumptions that it is running on the same basic chipset archetecture as it was when it was installed. It won't boot if you move the hard drive from one PC to another with a very different motherboard. This is one speedup to avoid. Sorry Mark, would you mind explaining what you mean for me? :blush: Do you mean the kudzu tool the RedHat/Fedora uses? Or perhaps the startup of the kernel itself? AFAIK my system just loads the modules I told it to when I set it up (and I only included those for my chipset anyway) :D Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/#findComment-585244504 Share on other sites More sharing options...
markwolfe Veteran Posted January 6, 2005 Veteran Share Posted January 6, 2005 Sorry Mark, would you mind explaining what you mean for me? :blush: Do you mean the kudzu tool the RedHat/Fedora uses? Or perhaps the startup of the kernel itself?AFAIK my system just loads the modules I told it to when I set it up (and I only included those for my chipset anyway) :D 585244504[/snapback] As I have primary experience with Red Hat, I can't vouch for a streamlined Gentoo.But, what I mean is the basic kernel boot. You should be able to to take your Linux hard drive built on an Intel Pentium, and move the drive to an AMD Athlon system (still ix86 family, but very different chipsets on the motherboard) and it will boot. Windows will not. Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/#findComment-585245611 Share on other sites More sharing options...
ichi Posted January 6, 2005 Share Posted January 6, 2005 As I have primary experience with Red Hat, I can't vouch for a streamlined Gentoo.But, what I mean is the basic kernel boot. You should be able to to take your Linux hard drive built on an Intel Pentium, and move the drive to an AMD Athlon system (still ix86 family, but very different chipsets on the motherboard) and it will boot. Windows will not. I'm not sure, but I don't think that would work if you strip the generic i386 support from the kernel and optimize it for your hardware :huh: Anyway with the kernels bundled with most distros then yeah, it would boot for sure on another machine. Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/#findComment-585245887 Share on other sites More sharing options...
Knight' Posted January 8, 2005 Share Posted January 8, 2005 As I have primary experience with Red Hat, I can't vouch for a streamlined Gentoo.But, what I mean is the basic kernel boot. You should be able to to take your Linux hard drive built on an Intel Pentium, and move the drive to an AMD Athlon system (still ix86 family, but very different chipsets on the motherboard) and it will boot. Windows will not. 585245611[/snapback] I think the reason why Redhat detects your hardware is because the kernel will have support for all the hardware it can, making it very big, whereas in Gentoo we generally build our own to be as small and efficient as possable. And as ichi said, the kernel will be built to run on generic processors, i386 and up, at the expense of all the optimisations a Pentium-4 or Althlon64 kernel would offer. Link to comment https://www.neowin.net/forum/topic/267491-faster-bootups/#findComment-585256008 Share on other sites More sharing options...
Recommended Posts