views:

83

answers:

3

I have some experience developing on Linux systems and am looking to get my hands really dirty with Embedded Linux soon.

What would be a good list of books someone could read to get a good grasp on Embedded Linux systems? Building Embedded Linux Systems seems to be a good starting point. Are there certain books or chapters of books that would be relevant? For example would it be worth it to read the entire book Understanding the Linux Kernel or could someone focus on a few chapters? What about book of specific topics like GUI, power saving and architecture?

+1  A: 

As Evan points out above, there is no simple answer to this. Certainly no right answer. Despite this, I'll give it a shot.

If you're into the kernel and device drivers (i.e. will be using custom hardware) I can recommend the Understanding the Linux Kernel title that you point to, but also Linux Device Drivers, available freely online (the printed version is newer and warmly recommended).

If you're more interested in building an embedded Linux system, I'd like to recomment you to start with a build toolkit such as BuildRoot. That project has good documentation and helps you get something useful up and running quite quickly. Then it is more or less a matter of reading up on different packages and customizing as you go ahead.

Depending on what you will try to achieve you will require different documentation, so the key is probably to identify a task before starting to buy books. (The Building Embedded Linux Systems that you point to is an exception - it provides a great overview to general techniques and point out interesting applications to include).

e8johan
A: 

I have recently started down a similar path with a PowerPC based embedded project. For adding device drivers to the kernel my favourite book is Essential Linux Device Drivers by Sreekrishnan Venkateswaran (Prentice Hall). It covers each of the main device drivers in turn e.g. i2c, PCMCIA, PCI, USB etc at a good level.

For a well written bible sized book on user space apps try Advanced Programming in the UNIX environment 2nd ed by Stephen Rago (Addison-Wesley)

Good luck

KermitG
A: 

The Embedded Linux Wiki has in-depth sections on topics like boot times, realtime, file systems, system size, and more.

Josh Kelley