ISBN: 111878894X

I'll recommend two books. I don't know if these are the "best" books on the subject, but I found them useful for some system-level experiments I did on an Odroid. They explain both the big picture and implementation details:

1) Professional Embedded ARM Development, by Langbridge [1]

This one is more about ARM instructions than about bootloaders or embedded OSes, but it does cover bootloaders in detail with case studies of some relatively unknown embedded boards, of the well-known Raspberry Pi, and of modern bootloader software like u-boot.

2) Building Embedded Systems, by Gu [2]

This book is broader than the one above, covering all kinds of embedded systems. It's the better book to understand the big picture, and understand how all the components (bootloader, OS, SoC, hardware buses, storage) interact. It does cover bootloaders but not in depth and not with case studies.

HackerNewsBooks.com is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to Amazon.com.