Sha0, why did you take so long to respond?
Where have you been all my life? (kidding)
Thank you for your input.
You are presenting me with a challenge. I was so focused on the other topic (
USB booting: how to create a UFD that will boot on most machines) that this had fallen to the back of my mind. Now I realize I have to pull both at the same time. Oh well, I will just have to work a little more.
The above list has addressed the following objectives:
- BIOS: role of the BIOS in the boot process
- POST, possibly including:
- Video BIOS / video option ROM.
- Non-volatile configuration data being observed and interpreted.
- Model-(system-)specific initialization.
- Memory checks.
- Extension ROMs, option ROMs, BIOS modules, PnP ROMs: BCVs (like SCSI) and BEVs (like PXE) initialization routines.
- Prompts for entering BIOS setup and boot order selection.
- Interpretation of device boot order and boot-device-specific boot routines called. Floppy, PXE, El Torito CD/DVD, HDD, etc.
- On an HDD, MBR is read from disk using INT 0x13 and its code is run.
It also has partly addressed the following:
- MBR: role of the MBR in the booting process, software used to manipulate the MBR, configuration settings in the MBR and advice for configurations related to UFDs.
- PBR: same as above (MBR).
- Software that boots your computer:
- the boot loader: location, role and operation.
- the bootstrap loader: location, role and operation.
- the boot manager: location, role and operation.
- the OS loader: location, role and operation.
- the kernel: location, role and operation.
It also clearly lays out the boot
sequence. This is a good map to follow as the computer boots.
-------------------------------------------------------------------------------------------------------------------------------
some other interesting cases for me include the Open Firmware on Apple Macintosh and EFI boot processes, too. Something to consider, possibly.
If you know about the other cases and are willing to help us with it or know someone who can be of help, by all means, please DO help. The objective is to follow a computer along as it boots and know where the problem lies when a problem occurs during the boot process and have enough information to take the appropriate corrective action.
At some point in time, we will need to turn these lists into landmarks that can serve as signals that guide us in the selection of tools and methods to apply.
Part of the objectives include:
- Operating system and the boot process:
- Operating systems boot time components
- Difference in Micro$oft generations
- Difference in *nix/Linux distros
- Difference between Microsoft OSes and *nix/Linux distros
Seeing that MACs today are *nix at their core, your "other interesting cases" are actually included in the plan. Feel free to contribute in your area of expertise.
I was thinking about covering EFI as part of the BIOS discussion. If that is a bad idea, please let me understand why and make a suggestion on how to proceed.
The Wikipedia article falls short of TOO MANY of the listed objectives. It has some basics that will of necessity end up being covered anyhow, but if you are of those reading along for the purpose of learning, please read it and come back to resume the process here. It is a simple article that covers the boot sequence, some historical facts, and a good bit of vocabulary relevant to the topic. It is a good place to understand the jargon. Do read it. As Sha0 puts it, it
has a lot of good stuff
I am currently chewing on how to present the information in a way that it is not too windy and technical, but yet satisfies those of us who are professionals. I would like to be as comprehensive as to not need too many jumps away from this forum except for the desire to learn more (links will be provided). This stop should be enough for anyone to see the light and become dangerous.
Please keep the suggestions coming.
Edited by LeMOGO, 23 January 2011 - 07:59 AM.