The FreeBSD boot process can be surprisingly complex. After control is passed from the
<acronym>BIOS
</acronym>, a considerable amount of low-level configuration must be done before the kernel can be loaded and executed. This setup must be done in a simple and flexible manner, allowing the user a great deal of customization possibilities.