-
Notifications
You must be signed in to change notification settings - Fork 0
Boot
Runs on 16-bit processor mode, only 1 MB of space
2.1 TB drive max
Requires longer time in order to initialize lots of hardware interfaces
Uses MBR partition scheme, can have max 4 primary partitions per drive, and only one single bootloader (grub for example)
Note:
Grub is a bootloader and a boot manager
Process:
- Maintains list of installed storage devices & primary partitions
- Power On Self Test (POST)
- Firmware loads the first sector of each of the storage target into memory and scans it for a valid master boot record (MBR) in the order specified in the boot order in the BIOS settings
If nothing found : display error message "please insert system disk..."
Development started by Intel
Runs on 32 or 34 bits processor mode
On any PC since 2007
Backward compatibility since BIOS emulation on UEFI. Thanks to the Compatibility Support Module (CSM).
Uses GPT partition scheme, can have max 128 primary partitions, and several bootloaders
Can look like older BIOS without sophisticated graphical interface, mouse support isn’t mandatory
Secure Boot : prevent boot-time viruses from loading
Network support
Process:
- Maintains list of installed storage devices & their EFI Service partitions
- Power On Self Test (POST) and in the same time scanning for a valid GPT : valid EFI bootable partition.
- Run the binary file provided by the operating system’s editor in the EFI partition
If nothing found : fall back to the legacy boot method
BIOS | UEFI | |
---|---|---|
1 | System switched on, POST is executed | System switched on, POST is executed |
2 | BIOS initializes the hardware required for booting | UEFI initializes the hardware required for booting |
3 | BIOS launches the first 440 bytes (MBR area) in the BIOS defined disk order | Firmware reads the boot entries in the NVRAM to determine which EFI application to launch and from where. In case of a disk, the firmware looks for an EFI system partition and tries to find the efi binary |
4 | The first 440 bytes can point to a second area: - next disk sectors after MBR or - boot partition (when used with GPT) |
Firmware launches that EFI application: - any boot loader such as grub - a boot manager such as rEFInd |
5 | Boot loader is run | |
6 | Boot loader loads OS by chain-loading or directly loads operating system kernel |
1 | BL loads and executes the kernel (with possible initramfs files) |
2 | BL loads kernel and unpack initramfs (initial RAM filesystem) archives into the rootfs |
3 | BL passes control to the kernel |
4 | Kernel executes the /sbin/init process (as pid 1) within the rootfs, Early userspace starts |
5 | Systemd executes all initrd targets (mounts filesystem on /sysroot) |
6 | Kernel root FS switched from initramfs root (/sysroot) to system rootfs (/) and systemd re-executes as system version. |
7 | Systemd looks for default target and starts/stops units as configured while automatically solving dependencies Systemd calls getty for each virtual terminal A display manager can eventually be configured on a tty Login is prompted, once credentials provided and successfully checked agains /etc/passwd, login is called |
8 | Starts the session by setting env variables, display motd banner |
9 | Shell is started, runtime configuration file (basrc) is sourced X or Wayland is started |
rEFInd is based on rEFIt boot manager based on EFI and UEFI. REFIt is a useful program but :
- it suffers from poor control over the boot loader detection process
- it only provides a list of operating systems. REFInd provides the ability to add other tools on the main screen
rEFInd is a boot manager for EFI and UEFI computers, but not a boot loader. As info, grub is a boot manager as well as a boot loader.
- init=/bin/sh: (last resort)
- emergency: after systemd
- rescue: once filesystem is mounted
- (if debug-shell.service enabled): systemd's debug-shell (tty9)
If you find any mistake, do not hesitate to open an issue.