Standard boot process
The standard boot process (without boot manager) proceeds as follows:
After starting the computer the BIOS automatically tries to read
the first sector of the boot device (C: or A:). When this succeeds the code in that
sector is executed. In case of an read error (eg. booting from A: without diskette in drive) the BIOS
tries to boot from the next boot device.
Hence when booting from C: the BIOS reads the first sector --- the
Master Boot Record (MBR) --- from the first hard disk and starts
the boot loader code found on this sector. This small
program (size 200 - 300 bytes) searches the partition table for the
active partition. The partition entry contains the position
of the corresponding boot sector. When an active partition is
found then the boot loader code reads the boot sector (from the
first hard disk) and executes the code contained on the boot sector.
This code finally boots the corresponding operating system.
Since the standard boot loader searches only in the partition table on
the first hard disk, it allows booting an operating system only from
the first hard disk. Also booting from a logical drive is not possible
with the standard boot loader.
On the diskette there is no MBR. Rather the first sector on a diskette already
contains the boot sector of an operating system in case the diskette is bootable,
or the well-known little program which asks the user to remove the diskette and
press any key.
The load process outlined above is an example of a widely used general principle.
In the first step only a single sector is loaded and executed. This sector contains
the necessary code to load additional sectors. Only these sectors loaded in the
second step contain the actual program to be executed. In this way a big program
(e.g. an operating system) can be started simply be loading a single sector (e.g.
a boot sector).