According to FreeBSD Handbook, 12.3 The Boot Manager and Boot Stages,
But in FreeBSD Architecture Handbook, 1.5 boot2 stage, it says that
I am a little confused with the first description.
Does it mean that boot2 and boot1 both come after boot0?
My current understanding is that boot0 is a boot manager which is installed in MBR and boot2 is a boot loader which is installed in the first sector (at first track of the boot slice).
Is it correct or not?
Could someone give an explanation about boot0 , boot1 and boot2?
Conceptually the first and second stages are part of the same program, on the same area of the disk. Because of space constraints they have been split into two, but you would always install them together. They are copied from the combined file /boot/boot by the installer or bsdlabel (see below).
They are located outside file systems, in the first track of the boot slice, starting with the first sector. This is where boot0, or any other boot manager, expects to find a program to run which will continue the boot process. The number of sectors used is easily determined from the size of /boot/boot.
But in FreeBSD Architecture Handbook, 1.5 boot2 stage, it says that
You might wonder, why boot2 comes after boot0, and not boot1. Actually, there is a 512-byte file called boot1 in the directory /boot as well. It is used for booting from a floppy. When booting from a floppy, boot1 plays the same role as boot0 for a harddisk: it locates boot2 and runs it.
I am a little confused with the first description.
Does it mean that boot2 and boot1 both come after boot0?
My current understanding is that boot0 is a boot manager which is installed in MBR and boot2 is a boot loader which is installed in the first sector (at first track of the boot slice).
Is it correct or not?
Could someone give an explanation about boot0 , boot1 and boot2?