Linux Device Drivers
by Alessandro Rubini and Jonathan Corbet
O'Reilly & Associates

Review by Don Bindner

Linux Device Drivers is one of those books that you read to release your
inner hacker (the good kind of hacker, of course).  The Linux mantra
might be ``with the source you can even fix it yourself,'' but the
honest truth is that most people wouldn't know where to begin fixing
anything in the Linux kernel.

Now to get a sense of what things feel like inside kernel space, you
might reasonably have picked up a book like Understanding the Linux
Kernel (by Bovet and Cesati), which takes you through the memory
manager, the file systems, etc.  It is a fine book, but your experience
would be akin to having engines explained rather than building an engine
yourself.

With Linux Device Drivers, you get inside and learn how to write your
own kernel modules.  It begins with a "hello world" module that does
nothing and works up from there.  The book focuses primarily on the 2.4
kernel series, but every chapter includes a section on backward
compatibility to the 2.2 and even 2.0 kernels.  Even if you are not
actually writing a driver, this gives you a wonderful history of how
Linux has progressed and improved.

None of this comes without effort, however.  You need to be something of
a C programmer before you pick this book up, and you have to be prepared
to read carefully.  Many times when I was tired, I found myself setting
it down so I could pick it up fresh later.  And that was before I got to
chapter 10 (a bit over half way) which began ``Before we go on to more
advanced topics...''

Still, if you are a C programmer and interested in how Linux works, I
really recommend it.  It takes the kernel, something mysterious and
magical, and puts it within your grasp.  Not every book can do that.

-- 
Don Bindner <[EMAIL PROTECTED]>

-----------------------------------------------------------------
To get off this list, send email to [EMAIL PROTECTED]
with Subject: unsubscribe
-----------------------------------------------------------------

Reply via email to