uma maneira relativamente fácil é usar o BURG, baseado no GRUB 2, mas isso é mais uma resposta de superusuário . Se você realmente quer se aprofundar em escrever seu próprio gerenciador de inicialização, você deve dar uma olhada no grub e burg fontes