Bootloader is a computer program that is executed before any operating system starts. A bootloader is loaded into main memory from persistent memory, such as a hard disk drive or, in some older computers, from a medium such as punched cards, punched tape, or magnetic tape. Bootloaders basically package the instructions to boot operating system kernel and most of them also have their own debugging or modification environment. As the bootloader kicks off before any piece of software on your device, it makes it extremely processor specific and every motherboard has it’s own bootloader. This is one reason that all Android phones have different Custom ROMS developed due to high variance of processing hardware present on the device. The iDevices running iOS somewhat share the same hardware specs and hence you don’t see much variance in their bootloaders.