Dual booting (multiple booting).
The boot sequence is the following:
(1) The bios determines the boot device.
(2) The bios reads the master boot record (MBR) from the boot device. This is one sector in a fixed location (first physical sector on the disk). Of course, the controller can play with the bios's head if it wants to. The MBR contains a few dozen machine instructions and the Partition Table. The partition table consists of 4 entries, which is why there is a max of 4 primary partitions on a physical disk.
(3) The bios executes the code in the MBR which looks for the first enabled partition in the partition table, loads the Partition Boot Sector (PBS), the first disk sector in the partition, and jumps to it.
Note that up to this point the boot process is OS independent. The MBR is the same on every hard disk of every (Ix86) os implementation.
(4) Code in the PBS typically loads the OS loader and jumps to it, or in the case of a boot manager, the PBS loads the boot manager and jumps to it. This IS os dependent.
From this point it depends on the OS/boot manager that's running what happens next. NT, for example, has a true but limited multiboot capability that is governed by the boot.ini file. Win 95 does not have a true multiboot capability, but it does have a pseudo-multiboot capability to boot itself or, at a point in the boot process, stop booting itself and restore the boot files for the previously installed version of MS dos (this differs from true multiboot in that the previous MS dos doesn't coexist intact with Win 95 but must be restored in the boot process).
In any case, it is perfectly possible to have a full, bootable system on any hard drive. Only the primary active partition of the drive the bios selects as a boot device will get booted; everything else will be ignored. I'm not guessing on this one; I have done it many times.
Every (I86-formatted) hard drive has an MBR and is capable of being booted. I've never seen a bios that allowed selection of more than the first IDE or the first SCSI drive, but apparently that's not so of newer bioses.
In any event, except for DISMOUNTABLE media (eg, floppy), the partition that the MBR boots gets the designation as the C drive. This is what we really mean when we say the "first active partition on the first physical disk." However, this doesn't apply to booting from a floppy (which isn't labeled C). I don't know what happens from a CDRom, but I'd be surprised if that were labeled C either.
A boot manager acts just like a booting OS in this sequence, except that rather than boot a full blow system they present the user with a choice, then typically load and execute the PBS of the users choice OS. This may or may not be the from the physical partition boot sector. Typically not, but rather from a collection of PBS's stored by the boot manager. Oh, the OS booted by a boot manager will almost certainly label ITS primary boot partition as the C drive (that is, the partition where its PBS is kept.) Note that the C drive is where the PBS and the os BOOT LOADER load from; it doesn't have to be the partition where the main OS resides (the os system directory -- Win95, WinNT, etc).
NT keeps only one PBS, the PBS of whatever version of DOS or Windows that was on the machine when NT is installed. That PBS image is kept in the root directory of the NT boot partition, the C drive, that is (the place where the MBR of the boot drive points). Thus NT can boot any number of copies of NT (because it's "behind" the PBS of NT, which has already executed by the time NTLoader starts), but only one choice of "anything else", which is whatever it has saved the PBS image for. That could be another os that has multiboot capabilities. In my case, it's Win 95 from which I can then boot the previous version of DOS and Win 3.11 if I choose.
Spots |