Essential Linux Device Drivers
Writing device drivers for Linux is not the technological equivalent of building a house for your dog out of spare lumber in your garage on a Sunday afternoon. On the other hand, it's not like performing a delicate heart--lung transplant, either. In other words, it is possible, but requires the relevant skill sets and a certain amount of determination.
The Audience section of the Preface says, "This book is intended for the intermediate-level programmer eager to tweak the kernel to enable new devices." Open up your bag of skill sets and see if you can find "C programming skills" and "intermediate-level programmer," and if they are resting at the bottom of the bag, dust them off and get ready to read this book.
The first three chapters introduce the reader to the Linux kernel, including a bit of a history lesson, what "GNU" is, finding kernel sources, and building the kernel. Really, quite a bit more material is involved, but it's all necessary as far as laying a foundation for what comes next. Chapter 4 establishes the groundwork for writing Linux device drivers, and then the book takes off from there.
Essential Linux Device Drivers is based on the 2.6 version of the Linux kernel, so it's as up to date as you'll need it to be. Also, it is very detailed and thorough. Venkateswaran covers material on embedded hardware like audio, video, wireless, and PCMCIA, beginning with relatively simple hardware and then moving toward more involved types of devices. Lessons are organized so that the reader knows what to expect, regardless of the degree of difficulty involved. Real-world examples let you take what you learn and apply it to actual projects, either personal or professional.
Although the book includes a companion website at elinuxdd.com, I didn't find the expected code examples in a form I could download, which would have been a plus. I did find a Book Updates section stating that the book is generally current as of the 2.6.23/24 kernel version and that updates would be added to the site as newer versions were released.
If you would like or need to write device drivers for Linux and you meet the "minimum standard qualifications" as outlined by the author, you will want to pick up a copy of Essential Linux Device Drivers.
Hardcopy, 744 pages
Prentice Hall PTR, 2008
ISBN-10: 0132396556 ISBN-13: 978-0132396554
£ 22.77, US$ 44.99, EUR 28.83
The Principles of Project Management
Because of my "jack-of-all-trades" position, I tend to dip my toe in the "project management" pool from time to time. The "Who Should Read This Book" section says the book is meant for readers like me – people who aren't expert project managers but want to learn more about project management. In fact, the author says, "You won't become a world authority on the project management discipline, but you will become an effective and efficient project manager."
Project management involves both mechanics and psychology, which means describing it requires an author who understands both domains. In her writing, Williams establishes her credentials in those worlds. Her presentation is both casual and informative, which is a nice mix if you need complex information but are starting from step one. Although this book won't make you an overnight expert, it will get you started in that direction.
After reading this book, I'd be more prepared if my employer were to ask me to start applying some project management principles to an upcoming assignment. If you are a newbie project manager, I recommend getting The Principles of Project Management.
Paperback, 224 pages
ISBN-10: 0980285860 ISBN-13: 978-0980285864
£ 20.32, US$ 39.95, EUR 27.73
On the other hand, like all books in a particular series, once you know what to expect, you can zero in on what you need pretty easily.
The "Who should probably back away from this book" section also suggests that if you are someone who doesn't know even basic HTML and CSS, someone who is an expert programmer needing just a reference text, or someone who would rather jump into a pit of angry cobras than try to learn something completely new, this isn't book the book for you.
Having to know only one programming language is rare, so while you're learning what is considered to be a "beginner's" language such as this, you might was well be learning the general basics of programming, too.
If you are a traditionalist and expect or need to be taught in a more conventional way, this book is not the one for you.
Paperback, 650 pages
O'Reilly Media, 2008
ISBN-10: 0596527748 ISBN-13: 978-0596527747
£ 20.32, US$ 39.99, EUR 27.73
Version 16 of the popular Linux desktop reveals new tools, edge-snapping, and performance improvements.
Symantec says Linux-Darlioz burrows in through PHP.
Dell renews its quest for the ultimate developer machine.
Innovative back door looks like normal SSH traffic.
One of CeBITs most successful forums opens the new year with a new name. The popular Open Source Forum continues in 2014 under the name Special Conference: Open Source. This year, the forum will be bigger and offer a wider range of possibilities for sponsors.
New release offers better graphics drivers and expands filesystem support.
New mail protocol will shut out the NSA and prevent snooping on metadata.
A new web application helps users visualize distributed denial-of-service attacks.
Ubuntu 13.10 takes a step toward convergence, with lots of mobility, but Mir only partly here.
Galileo board is targeted to embedded developers and educational institutions.