Booting
Execution
A CPU loads the next instruction from memory
This instruction is executed
This process repeats
Where does the first instruction come from?
Volatility
Most operating systems are stored in non-volatile memory
CPUs in most computers execute instructions from volatile memory
A set of operations is needed to move the operating system to a location that is executable
First-stage boot loader
Most modern systems include multiple stages of booting
The first step typically involves loading and executing firmware from a dedicated storage device
Examples include BIOS and UEFI
Second-stage boot loader
The initial boot loader is usually tightly coupled to the device
It is basic and has limited size
It is used to load a more complete bootloader that loads the full OS
Examples include GRUB, Syslinux, NTLDR, and BOOTMGR
GRUB
Popular boot loader used with Linux systems
Supports multiple operating systems
GRUB OS Selection