
Hi Mildred,
This might not be the exact list for this but hope some here would be able to help me. Is there a step-by-step guide on how to program a bootloader? The u-boot bootloader (or other linux bootloader) is a very big program to study. I would like to know how to program the basics and concepts. Thanks.
Well look at it this way - what does a bootloader do?
- Initialize the hardware - Setup everything so the booted program finds what it needs - What abilities are needed to do this in a comfortable way?
Well there's your requirements ;) Now find the relevant hardware and software documentation to write a program doing just that.
The complexity of U-Boot is due to supporting many different platforms. Try studing the code relevant for _one single_ board and you have an excellent object to study.
For a somewhat more detailed specification read the docs about the available U-Boot commands in the DULG documentation. Most commands are there because they serve a purpose necessary for a comfortable working of a bootloader. Read the README in the toplevel directory to read more about the "invisible parts" of U-Boot.
But remember that studying a working fully fledged boot loader can be somewhat irritating if you just want to see clearly the basic concepts. On the other hand there is _nothing better_ to study than such a Free Software project that has features needed and added by a community much larger than most closed software development teams.
Cheers Detlev