Top positive review
20 people found this helpful
Best Linux device driver book yet
on May 6, 2008
I've been frustrated by many other Linux kernel and device driver books. The authors often make assumptions about the readers knowledge and gloss over areas that can be quite confusing.
To some extent, that's unavoidable: the Linux kernel is monstrous and very complex, and the hardware that drivers control can also be dark and mysterious territory.
I really appreciated this books approach. It's not that everything is explained in complete detail; that would be impossible. However, the author obviously tries very hard to give an overview, an orientation that will hopefully set your mind in the right direction, before diving into details. Throughout the book he adds "go look at this" suggestions that can help you understand whatever he's dealing with at this point.
I think Chapter 2, which is a high level fly-by of the kernel in general, is an absolute masterpiece. That starts by pulling typical kernel boot messages and explaining what they mean and what's going on in code to produce them. It then goes on to discuss kernel locks, briefly looks at procfs and memory allocation, and closes (as each chapter does) with pointers to where to look in the source for the subjects discussed.
Chapters 3 and 4 flesh out basic concepts more, and then after that the book goes into details, picking both real world and fanciful examples of hardware and giving sample device drivers. Simple devices are presented first, while later chapters get into more complicated hardware, but in each case the same general format is followed: overview of the how and why, sample driver(s), how to most easily debug, and pointers to real kernel sources.
Very well done. I have no complaints - oh, a few minor typos, maybe, but nothing serious.