I'm following Baking Pi and am just on lesson 1, which is the simple introductory ARMv6 code to turn on the OK LED on the Pi. I have compiled the code I've written and now the tutorial says to use an existing SD Card with a Linux distro on it, and replace kernel.img on that SD, with the kernel.img created from our tiny program.
While I could download one (and will, of course, if it is necessary) I don't have an existing Linux distro on the card right now. It's just a blank card. I'd also like to get a better understanding for what the Pi does when it is powered on. I assume the reason this tutorial uses an existing Linux installation and replaces the kernel with our own is purely because it doesn't want to have to introduce the concept of a bootloader, and GRUB or LILO will be on the card.
I tend to learn more effectively by diverging from what tutorials tell you and exploring by myself.
Given a bootloader is just code that is executed when the Pi is powered on (I assume), is it strictly necessary to install Linux just so I can run my 352 byte program on the hardware, or can I flash this straight to the card and have it run when I power on the machine?
I guess my ignorance here comes from the fact I don't know the technical details of what a bootloader actually does... I mean, whether or not it is arbitrary code that sits in the MBR, or if it has to conform to some sort of standard, which my program obviously won't do.