For the past few months this was my view as I sat down on my couch to enjoy a cup of coffee, some toast, and little bit of Linux. As I mentioned on a Google+ post it was “a balanced breakfast.”
A while ago I dove head first into Linux by installing the Gentoo Linux distribution and adding KDE on top of that. I have learned lots about what makes Linux Linux, but I needed to know more. I want to create devices that utilize the power of Linux and talk to the real world whether it be through GPIO, I2C, SPI, etc. I want to put the power of Linux in thermostats, sprinkler controllers, and other devices that are relatively dumb and disconnected from the world.
With a little searching I found Linux Kernel Development by Robert Love and I really enjoyed reading it. Robert starts off with some history and comparison of Linux with other operating system kernels to get everyone on the same page and then jumps right into how to get the source files and build them. He walks you through organization, structure, and architecture – all with direct code examples to exemplify his points.
To someone who is new to the Linux kernel, driver development, and/or operating systems in general, this book is a great source of information. Robert does a great job of explaining the “hows” as well as providing many of the “whys.”