Book Reviews
Book Reviews
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.
Sreekrishnan Venkateswaran
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.
Meri Williams
Paperback, 224 pages
SitePoint, 2008
ISBN-10: 0980285860 ISBN-13: 978-0980285864
£ 20.32, US$ 39.95, EUR 27.73
Head First JavaScript
If you're the sort of person who gets distracted easily, Head First JavaScript might not be the book for you. As with all Head Start books, this one contains a lot of extra noise.
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.
What I want a JavaScript book to do is teach me JavaScript, and also teach me the basics of programming in general.
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.
While reading this book, you'll probably notice that you are learning to program in JavaScript without having realized it.
You'll still spend about the same amount of time learning JavaScript with the Head First JavaScript book as with any other, but the time passes more quickly.
If you like learning JavaScript this way and want to learn yet another language, the Head Start series covers a variety of other programming topics as well, such as AJAX, Java, and C#, for example.
Do I consider this the perfect JavaScript book? Perhaps only if you thrive on alternative learning styles.
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.
On the other hand, if you know just enough HTML and CSS to put together a basic web page, and you want to add JavaScript to the mix, you should get a copy of Morrison's book.
Michael Morrison
Paperback, 650 pages
O'Reilly Media, 2008
ISBN-10: 0596527748 ISBN-13: 978-0596527747
£ 20.32, US$ 39.99, EUR 27.73
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Wine 10 Includes Plenty to Excite Users
With its latest release, Wine has the usual crop of bug fixes and improvements, along with some exciting new features.
-
Linux Kernel 6.13 Offers Improvements for AMD/Apple Users
The latest Linux kernel is now available, and it includes plenty of improvements, especially for those who use AMD or Apple-based systems.
-
Gnome 48 Debuts New Audio Player
To date, the audio player found within the Gnome desktop has been meh at best, but with the upcoming release that all changes.
-
Plasma 6.3 Ready for Public Beta Testing
Plasma 6.3 will ship with KDE Gear 24.12.1 and KDE Frameworks 6.10, along with some new and exciting features.
-
Budgie 10.10 Scheduled for Q1 2025 with a Surprising Desktop Update
If Budgie is your desktop environment of choice, 2025 is going to be a great year for you.
-
Firefox 134 Offers Improvements for Linux Version
Fans of Linux and Firefox rejoice, as there's a new version available that includes some handy updates.
-
Serpent OS Arrives with a New Alpha Release
After months of silence, Ikey Doherty has released a new alpha for his Serpent OS.
-
HashiCorp Cofounder Unveils Ghostty, a Linux Terminal App
Ghostty is a new Linux terminal app that's fast, feature-rich, and offers a platform-native GUI while remaining cross-platform.
-
Fedora Asahi Remix 41 Available for Apple Silicon
If you have an Apple Silicon Mac and you're hoping to install Fedora, you're in luck because the latest release supports the M1 and M2 chips.
-
Systemd Fixes Bug While Facing New Challenger in GNU Shepherd
The systemd developers have fixed a really nasty bug amid the release of the new GNU Shepherd init system.