OS - shivamvats/notes GitHub Wiki

Booting

Firmware

The first program that runs when we switch on a computer is the computer's firmware. It links the hardware with the OS. Note that the firmware comes installed in the motherboard and hence can't be changed.

The most popular firmware is the UEFI (Unified Extensible Firmware Interface). It is a replacement of the older BIOS (Basic Input Output System). Most modern motherboards come with UEFI. However, it does have a compatibility (legacy) mode that behaves like BIOS.

  • BIOS - Is a piece of software that sits in the motherboard that is responsible for waking up the hardware and running the bootloader that then loads the OS. The BIOS first runs the POST (Power-On Self Test). Any hardware issues detected at this stage are communicated via error messages or beeps. Post POST (huehue) BIOS loads the first 512 bytes from whatever device was selected for booting. These 512 bytes must contain the MBR (Master Boot Record) if the boot is to succeed.
    • MBR - The first 440 bytes of the MBR contain the bootloader.
  • UEFI - UEFI is a cross-platform replacement of BIOS. It avoids many of the limitations of BIOS and makes use of the GPT (GUID Partition Table) instead of the MBR.
    • GPT - Removes the restriction on the size of the booting drive.

Bootloader

Grub - Grub (or Grub2) is the default bootloader of Ubuntu. It is a multiboot boot-loader which means it is definitely required if you want to dual-boot your computer.

⚠️ **GitHub.com Fallback** ⚠️