Note: This article explains bootloader from a computer’s perspective. For an embedded system, it’s quite a bit different and I’ll write a separate article about it.
In this article, I’ll try to explain in brief what is a Bootloader. You may have heard the term Bootloader, also spelled as Boot Loader. Some people also like to call it a boot manager or a bootstrap loader.
It is a small piece of a computer program that allows the device to boot. Hence called a bootloader, this does not necessarily mean a device cannot work without a bootloader well at least in 2022. Where we have 2 Stage bootup process, BIOS/UEFI followed by Bootloaders that are now part of operating systems.
Bootloaders also initialize the basic IOs (Inputs and Outputs) like the USB of your computer hardware. It is generally stored in a non-volatile memory whose location is known to the CPU. So as soon as the computer is powered ON by the human operator. The very first thing which is executed by it is the bootloader.
Bootloaders were originally designed because there was no standardized protocol for loading the first code since it is processor dependent. So, it may vary from one device to another. The operating system could have been on a hard drive or in old days it used to be on CDs, Floppy disks & Punched card programs. It is the bootloader’s function to point to it and let the operating system boot. That this my friend the origin story of the bootloaders and its purpose.