GhostBSD Boot Process

From GhostBSD Wiki
Revision as of 12:49, 23 March 2020 by Slughorn (Talk | contribs) (GhostBSD Boot Process)

Jump to: navigation, search
Welcome to Icon Disti GhostBSD.png GhostBSD Boot Process.
This page is in maintenance!
Please do not change this page without to contact the author or use Discussion!
System
Directory Structure Standard Mount Points Configuration Files
Basics Users and Basic Account Management Permissions
Pc-sysinstall System Administration System Administration Utilities
Kernel Competence Hardware detection with dmesg GhostBSD Boot Process
Back to the Icon Disti GhostBSD.pngWiki

Introduction

The process of starting a computer and loading the operating system is referred to as “the bootstrap process”, or “booting”. The GhostBSD boot process provides a great deal of flexibility in customizing what happens when the system starts, including the ability to select from different operating systems installed on the same computer, different versions of the same operating system, or a different installed kernel.

The GhostBSD boot process differs from the FreeBSD boot process. On this page we will show you the similarities and differences.

GhostBSD Boot Process

Turning on a computer

On x86 hardware

The Basic Input/Output System (BIOS) is responsible for loading the operating system. The BIOS looks on the hard disk for the Master Boot Record (MBR), which must be located in a specific place on the disk. The BIOS has enough knowledge to load and run the MBR, and assumes that the MBR can then carry out the rest of the tasks involved in loading the operating system, possibly with the help of the BIOS.

The code within the MBR (/boot/mbr ) is typically referred to as a boot manager, especially when it interacts with the user. The boot manager usually has more code in the first track of the disk or within the file system. Examples of boot managers include the standard GhostBSD/FreeBSD boot manager /boot/boot0, also called Boot Easy, and Grub, which is used by many Linux® distributions.

If only one operating system is installed, the MBR searches for the first bootable (active) slice on the disk, and then runs the code on that slice to load the remainder of the operating system. When multiple operating systems are present, a different boot manager can be installed to display a list of operating systems so the user can select one to boot.

GPT bootcode for UFS on BIOS-based computers

gptboot is used on BIOS-based computers to boot from a UFS partition on a GPT-partitioned disk. /boot/gptboot is installed in a freebsd-boot partition with gpart(8).

When it starts, gptboot first reads the GPT and determines which drive and partition to boot from, as described under BOOTING, below. If it does not find an eligible partition, or if the user hits a key within three seconds, gptboot switches from auto-boot to interactive mode. Interactive mode allows manual selection of the disk, partition, filename, and boot option flags, as described in boot(8).

The GPT standard allows a variable number of partitions, but gptboot only boots from tables with 128 partitions or less.