Anatomy of the Linux Boot Process
Donna writes "This article discusses detailed similarities and differences involved in booting Linux on an x86-based platform (typically a PC-compatible SBC) and a custom embedded platform based around PowerPC, ARM, and others. It discusses suggested hardware and software designs and highlights the tradeoffs of each. It also describes important design pitfalls and best practices."
What I like about Linux is never having to reboot except when it is time for a kernal upgrade. :)
Originally posted on the debian-devel list: http://lists.debian.org/debian-devel/2004/11/msg00 547.html
They could have at least made sure the arrows on the diagrams were round the right way!
Code, Hardware, stuff like that.
But I still found that article as boring as hell!
99 bottles of beer in 175 characte
I really hate to nit-pick, but any editor should have caught that the arrows in the flow chart point the wrong way.
Anyway, I've often wondered why the OS insists on redetecting hardware when BIOS does it for me already. I've heard that the LinuxBios actually does away with the hardware detect phase; leaving it solely to the kernel.
If the most popular OSes out there are taking care of HW at the high level, why haven't BIOS makers taken advantage of this to reduce their workload?
I'd rather you do it wrong, than for me to have to do it at all.
Now I understand the boot process much better, I always have started at the boot up process and wonder what the hell is Linux doing to my computer, eh, I guess I understand now better in how it boots, I want to see a comparsion between Linux and Windows... newb linux user here loves it but hates ATI support.
May
The article makes an interesting read (although the server is getting slow already), but it seems a bit short on commentary. I'm no expert on the low-level systems of Linux, so the bare facts are quite interesting, but I would have been more interested to read a comparison of the merits of the different systems.
My impression, from the article, is that x86 versions of Linux are carrying quite a lot of legacy (from DOS et al). Does this mean that Linux on other architectures is "better" in any sense? I don't know, but I'd be interested if someone can inform.
apterous.org
I've always found it disconcerting that a verbose boot is given by default. Before Linux goes main stream on the home desktop, the distros ought to slap a plain progress bar with a pretty picture [ie. Windows clouds or logos] and not show verbose details unless something is wrong with the boot, or unusual.
Saskboy's blog is good. 9 out of 10 dentists agree.
Time to stop trusting that the arrows if emergency exit signs are right now too?
i've noticed on SuSE that it now comes with a boot splash screen (a la Windows loading...). I know that's (somewhat) easily turned off, but really, I don't want my linux to be all fisher-price pretty. give me the rough and unadulterated command lines that are run when it boots up...make it look cool, make it intimidating, give it that matrix-esque feel...make it scare off all the n00bs that think they know everything.
This sig contains repetition and redundancy.
And here i Present you the BSD boot process
1) birth
2) death (confirmed by netcraft)
The last thing we want to see is more people using Linux.
Frickin' noobs, eh?
--
the strongest word is still the word "free"
Single Board Computer - aka cheap-and-nasty thing with no cards. Add power and boot.
-D
Single Board Computer. A computer with almost everything (sometimes even storage by way of flash/nvram) on a single board.
Vote for global prefs bug
This article glosses over one point that is very critical. That is, in an embedded system, the hardware is known at compile time, as well as all the details of initializing it. On a desktop PC, the hardware configuration is a mystery everytime you boot. Who knows, maybe the user decided to move their network card to a different PCI slot and now it has a different memory address, add a hard drive, remove a sound card, take out half the RAM. This makes the boot process far more complicated. The BIOS method of dealing with this situation is archaeic and painful to use, but it works. That is, you can boot even the dumbest OS (say, DOS, or that memtest86 iso) without having that PS know anything about the hardware.
Having written a few embedded bootloaders (and modified some others), I will say that booting an embedded device is far far easier than booting a device who's hardware (that is critical to booting) can change between boots.
From the Slashdot submission:
And from the actual article: Replacing the string "This installment of "Migrating from x86 to PowerPC"" with "This article" and replacing the word "between" with the phrase "involved in" is not sufficient to serve as summarization in the submitter's own words. Somehow I have a hard time believing that the submitter "Donna" and the article author Lewin Edwards are one and the same person. If I'm wrong, then fine. You can't plagiarize yourself. If I'm correct, then Slashdot's done it again. The article summary isn't an original work by Donna, but a minor modification of the article author's own summary, and should be properly attributed as such.Open the office, turn on the computer, walk out of the office, walk across campus to the cafeteria while ogling the young college chicks, get a cup of coffee, walk back, log in, do work.
Don't blame me, I voted for Kodos
You can press ESC when Windows it loading, at least for the Windows 98 series, and it gives your autoexec and config.sys anyway if you have them set to echo. Windows 2000 and XP booting into safemode have verbose boots.
Saskboy's blog is good. 9 out of 10 dentists agree.
How the mighty have fallen! I'd never expect to see Andrew Tanenbaum trolling Slashdot as AC.
"Anyone who attempts to generate random numbers by deterministic means is living in a state of sin." -- John von Neumann
Some people don't use the framebuffer drivers because they have a "better" xorg driver and they might be incompatible. So bootsplash doesn't work. What you can use is rhgb. When entering runlevel 5 it loads X ASAP during the boot process and has a special progress screen. When it's time to load XDM/GDM the greeter script kills rhgb but keeps the X session for itself. (This is important because if X went down and then up again, you'd have to sit through two screen blank-outs while the monitor gets re-probed)
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
They are not cheap-and-nasty. They are primarily for embedded development, and can be quite expensive. They usually have everything a modern computer needs: ethernet, multi-megabyte storage, RAM, graphics adapter, etc. Most of the time a low-power CPU (like ARM) or an older x86 (486 or early Pentium). Sometimes they even include a small LCD display.
Vote for global prefs bug
I _think_ the ibm site can handle a /. swarm. No need to karma whore this one.
...I alway find that is one of the funner things with linux from day one after my first install, even if I haven't a clue what the hell is going on. I just sit there hyp-mo-tized -> LOOKATHERGO! DANGTHASCOOL!
kinda fun in an admittedly strange way, it's also cool to see how your leet speed reading is, if you can keep up.
A couple of other posts refer to this indirectly.
Bootchart is actually some of the coolest use of graphical display of data I have seen in a while:
bootchart
Some of the Solaris 10 guys even used it to improve the boot process on new releases of Solaris 10.
The latest updates (as of a few days ago) continued to streamline the system.