Potential Problems with and Limitations of Dual-Boot Systems
It is possible to have a dual-boot system in which you have two (or even more) operating systems on the hard disk, and you can select which one you want at each system boot. This is a very useful configuration in many circumstances; if you only have one computer, and you want to use FreeBSD for programming and Windows for gaming, dual-booting is an ideal solution. Working with dual-boot systems can present some problems, however, if you don't take steps to avoid and/or deal with them.
First, be aware that all the information necessary to boot FreeBSD must be located within the first 1,024 cylinders of the hard disk. This is necessary for the FreeBSD boot manager to work; it means that when you partition the disk for FreeBSD using FIPS, either the root partition must be completely located within the first 1,024 cylinders or you can use a separate boot partition that is completely located in the first 1,024 cylinders. Use the "Start" and "End" cylinder readouts in FIPS to determine where your partitions start and end. If you choose the latter option, the root partition does not have to be completely located in the first 1,024 cylinders. Note that "completely located" means that the partition has to both start and end below the 1,024th cylinder. Simply starting below the 1,024th cylinder is not good enough.
If you need more space for Windows or DOS than is available below 1,024 cylinders, you can use FIPS again to split the Windows or DOS partition into two partitions, giving you a C drive and a D drive in Windows or DOS. In between these C and D drives, you need to put a small partition for FreeBSD to boot from. This partition will be used as /boot later on during the install (30MB should be more than enough for this partition).
Second, when you reinstall programs after partitioning, be certain to install DOS or Windows before you install FreeBSD. DOS and Windows assume that they are the only operating system on the hard drive and will overwrite the master boot record without asking. If you install FreeBSD first, installing DOS or Windows later will clobber FreeBSD's boot manager, and you will no longer be able to boot into FreeBSD. This problem is easily fixed, but save yourself the headaches and just install DOS or Windows first.
Dual-Booting with DOS, Windows 95, Windows 98, Windows Me, or Windows XP
FreeBSD comes with a boot manager that allows you to dual-boot with various operating systems. If you already have DOS, Windows 95, Windows 98, or Windows Me installed, it is easy to set up the boot manager. You are given the option to install it during the FreeBSD installation. DOS, Windows 95, Windows 98, or Windows Me is automatically added to the boot menu.
Dual-Booting with Linux
If you want to dual-boot with Linux and load Linux from the FreeBSD boot manager, install LILO (the Linux boot manager) at the beginning of your Linux boot partition rather than in the master boot record (MBR). See the LILO documentation for instructions on how to do this. After you have installed LILO, you can boot Linux from the FreeBSD boot manager. If you want to boot FreeBSD from LILO, see the section later in this chapter titled "Booting FreeBSD from LILO."