Qualquer código que seja executado antes do sistema operacional principal ser iniciado e que esteja envolvido na inicialização de outros programas, é um gerenciador de inicialização. A maioria dos computadores, até mesmo a maioria dos dispositivos incorporados, tem uma cadeia de bootloaders: código na ROM ou na memória flash que carrega outro pedaço de código da memória flash ou de uma unidade de disco, que carrega outro pedaço de código e assim por diante. O BIOS é um bootloader (e pode ter), reFInd é um bootloader, o Grub é um bootloader, etc.
Alguns gerenciadores de inicialização não fazem nada além de carregar outro código e ramificá-lo, mas a maioria executa tarefas adicionais, como ler dados de configuração, detectar periféricos conectados, testar hardware, inicializar dispositivos, enumerar armazenamento e dispositivos de rede para determinar o que carregar , exibindo mensagens na tela, ouvindo a entrada do usuário para permitir que o usuário influencie o processo de inicialização, etc.
Um gerenciador de boot é um tipo particular de bootloader que inclui uma maneira para o usuário selecionar entre vários sistemas operacionais. O gerenciador de boot do Grub realmente não “invoca” o gerenciador de boot do Grub, a funcionalidade do gerenciador de inicialização é um aspecto do Grub.
Alguns PCs com BIOS legado têm recursos de gerenciador de inicialização bruto, permitindo que o usuário selecione entre alguns dispositivos; é limitado porque o BIOS legado só pode carregar os primeiros 512 bytes de um disco e executar o código lá. O UEFI possui um gerenciador de inicialização mais poderoso que permite ao usuário selecionar entre arquivos em uma partição FAT.
Se os carregadores de inicialização contam como firmware depende exatamente de como você define o firmware. Pela definição “fornecida com o hardware do computador, em vez de instalada em um dispositivo de armazenamento”, o BIOS e o UEFI são firmware, mas não são re-localizados e o Grub. Pela definição "independente do sistema operacional", reFind e Grub são firmware.