GNU GRUB (GRand Unified Bootloader) is a bootloader. It was originally intended as a common bootloader for various new operating systems conforming to the multiboot specification. Nowadays, many Linux distributions have adopted GRUB as their default bootloader.
There are two major versions of GRUB, with incompatible configuration files:
- GRUB Legacy, with version numbers up to 0.97;
- GRUB 2, with version numbers from 1.9x to 2.yz.
This tag is about GRUB 2. Note that versions numbered 1.9x are GRUB 2, not GRUB Legacy.
GRUB partly resides in the master boot record, so it is launched by the BIOS. GRUB2 supports both legacy BIOS and UEFI. It is able to read most filesystems, and its main job is to read the kernel and initramfs from a disk in order to place them into memory and launch the kernel.