Linux Kernel Development (3e)

 

Author: Robert Love
Publisher: Addison Wesley, 2010
Pages: 480
ISBN: 978-0672329463
Aimed at: Developers interested in the Linux OS
Rating: 4.5
Pros: Good introduction to Linux in general
Cons: Misleading title
Reviewed by: Harry Fairhead

The first question to ask is why would you be interested in the Linux Kernel?

Most programmers are happy developing applications that make use of the Kernel and really don't want to meddle with its inner workings.

Part of the answer, and it's a big part, is simple curiosity. Knowing how an operating system works is a great eye opener to the world of systems programming and there are lots of ideas that have a more general applicability.

There are three other possibilities for why you might want to read this book. One is if you are taking or teaching an operating systems course, the second is that you are developing device drivers and need a background and the other is if you actually want to do some Kernel development. My guess is that this last reason is in the minority and most readers are either just curious or involved in a course.

Banner

This is a beginner's book in the sense that it really does start from the beginning and explain features of the Kernel as it goes along. By the end of Chapter 2 we have learned the history of Linux and looked at various development issues to the point were I was really wanting to get started on finding out.

The trouble is that the next two chapters describes process management and scheduling- there is some code but it is explanatory code. The point is that you don't actually get to develop any part of the Linux Kernel as part of the book.

Nowhere is there a section that says let's modify the scheduler or tinker with the filing system.  This might be a bit ambitious but it is a reasonable assumption that a book called "Linux Kernel Development" might actually have some examples of development rather than just explanations and expository code.

The book continues on this way covering the standard topics - system calls, data structures, interrupts, synchronisation, timers, memory management, file systems, block I/O, address space, page cache, devices and modules, debugging and portability. All good stuff but still theory anchored in Linux-based examples.

You could take this theory and take it up to the next level and start to modify the Linux Kernel but this would take a lot of time and effort to even find the code you needed to modify.
Similarly the book talks its way around device drivers and where they fit in but it doesn't give you an example of actually creating or even modifying one. As a result the book is good for background reading for anyone interested in device drivers but you will need another one to get you started.

Don't misunderstand the criticisms - this is a really good book and one that I'm pleased to have on my bookshelf. It would make a really good part of any course on practical operating systems and system programming in general. It  is also full of lots of helpful background information, historical wisdom and general knowledge - it also happens to be good fun to read if you are interested in the subject. You will however need some help in actually getting to grips with the Kernel - it's another step on the road.

Even so - highly recommended.

Banner


Teach yourself SQL in 24 Hours

Author: Ryan Stephens, Ron Plew & Arie D. Jones
Publisher: Sams
Pages: 460
ISBN: 978-0672335419
Aimed at: Novices in SQL
Rating: 4
Pros:Good coverage of the ANSI standard with examples in real world SQL dialects
Cons: You might prefer a book aimed at the particular dialect you’ll be working with
Revie [ ... ]



Teach Yourself the Twitter API in 24 Hours

Author: Christopher Peri, Bess Ho, Jon Wu & Chia Hwu
Publisher: Sams, 2011
Pages: 352
ISBN: 978-0672331107
Aimed at: Mostly PHP programmers
Rating: 4
Pros: Lots of introductory material plus examples
Cons: Lacks explanation and depth
Reviewed by: Lucy Black

The Twitter API seems to be complicated when y [ ... ]


More Reviews

Last Updated ( Monday, 17 March 2014 )
 
 

   
RSS feed of book reviews only
I Programmer Book Reviews
RSS feed of all content
I Programmer Book Reviews
Copyright © 2014 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.