We presently have three basic mechanisms for loading the kernel as described below: they all pass some information to the kernel to help the kernel decide what to do next.
Biosboot is our ``bootblocks''. It consists of two files which will be installed in the first 8Kbytes of the floppy or hard-disk slice to be booted from.
Biosboot can load a kernel from a FreeBSD filesystem.
Dosboot was written by DI. Christian Gusenbauer, and is unfortunately at this time one of the few pieces of code that will not compile under FreeBSD itself because it is written for Microsoft compilers.
Dosboot will boot the kernel from a MS-DOS file or from a FreeBSD filesystem partition on the disk. It attempts to negotiate with the various and strange kinds of memory manglers that lurk in high memory on MS/DOS systems and usually wins them for its case.
Netboot will try to find a supported Ethernet card, and use BOOTP, TFTP and NFS to find a kernel file to boot.