Device drivers literally drive everything you're interested in--disks, monitors, keyboards, modems--everything outside the computer chip and memory. And writing device drivers is one of the few areas of programming for the Linux operating system that calls for unique, Linux-specific knowledge. For years now, programmers have relied on the classic Linux Device Drivers from O'Reilly to master this critical subject. Now in its third edition, this bestselling guide provides all the information you'll need to write drivers for a wide range of devices.
Over the years the book has helped countless programmers learn: - how to support computer peripherals under the Linux operating system
- how to develop and write software for new hardware under Linux
- the basics of Linux operation even if they are not expecting to write a driver
The new edition of Linux Device Drivers is better than ever. The book covers all the significant changes to Version 2.6 of the Linux kernel, which simplifies many activities, and contains subtle new features that can make a driver both more efficient and more flexible. Readers will find new chapters on important types of drivers not covered previously, such as consoles, USB drivers, and more. Best of all, you don't have to be a kernel hacker to understand and enjoy this book. All you need is an understanding of the C programming language and some background in Unix system calls. And for maximum ease-of-use, the book uses full-featured examples that you can compile and run without special hardware. Today Linux holds fast as the most rapidly growing segment of the computer market and continues to win over enthusiastic adherents in many application areas. With this increasing support, Linux is now absolutely mainstream, and viewed as a solid platform for embedded systems. If you're writing device drivers, you'll want this book. In fact, you'll wonder how drivers are ever written without it.
|
Average Customer Review:
( 58 customer reviews )
Write an online review and share your thoughts with other customers.
Most Helpful Customer Reviews
28 of 28 found the following review helpful:
great book for the right personFeb 20, 2005
By Charles Notley I used this book to write a device driver for my computer engineering senior project. It was very helpfull, but could improve. 2nd edition covers almost everything you'll need for 2.4 kernel drivers. Organization is like a text book that includes reference material, but attempts to be a tutorial. Hopefully the 3rd edition will be better organized. I noticed lots of negative reviews on Amazon, but after reading some chapters on safari (the oreilly free book site) I decided to purchase it any ways. If you buy this book and don't have a solid background in operating systems, computer architecture, and microprocessor interfacing you probably won't have an easy time understanding several key topics well enough to write a working driver. This will probably make you mad enough to write another bad review.
45 of 50 found the following review helpful:
Needs work.Sep 02, 1999
By Jack Dennon Does contain lots of interesting info about Linux drivers and Linux in general. But the meat is more reference than tutorial. A really great tutorial begins chapter two, and so I thought here I'm really going to learn everything I need to know about creating Linux drivers. Didn't turn out that way. After you work the first exercise, that is, the tutorial example at the beginning of chapter two, you have seen the last of the complete examples. From here on it's code fragments and isolated functions. The author obviously could have written the book we need. But he didn't. It's a valuable book, but it's not a tutorial. What a beginner needs are whole, complete, real, listings of programs that work. Which reminds me, a real driver that drives a real device, presented in its entirety, with all details of how to compile it, and how to run it, would have been far more instructive than a "driver" that reads and writes only in memory so that it can be "portable" across many Linux platforms. A portable driver probably is a neat stunt that impresses existing gurus, but that's not the group that needs this book. To see what I'm driving at, look at Kernighan and Pike's "The UNIX Programming Environment." Their big programming project is indeed presented in fragments and isolated functions in their chapter eight, but the entire project just as it will appear on your disk is listed in the appendix. If Rubini had followed that model his book could have been really instructive. But he didn't. So there's an opportunity here. Some guru should set down and assemble these fragments into the book we need.
17 of 17 found the following review helpful:
A good book, if you know what your doingSep 11, 1999
This is a great book for understanding drivers and the Linux kernel internals, but only if you have a strong assembly/C background and know PC hardware. I found myself checking other books on programming often to understand the content of this book.
23 of 25 found the following review helpful:
Linux Device DriversDec 15, 1999
By Daniel Sheltraw This is the best and most complete book on writing linux device drivers yet. My only suggestions are (1) that the author writes a new addition or supplement for the 2.2 kernel and (2) that this new book include an example driver after the hello world driver that is only slighlty more complicated in that it uses the fops and one method. An example of how user-space code would then call this driver would be helpful as well.Bravo
79 of 96 found the following review helpful:
OK reference. Bad tutorial ...Sep 10, 2002
Before starting let me assure you that I had written SCSI drivers for SVR4 and 4.2. I had also done some proprietary drivers for *BSDs earlier during undergrad/grad years. After reading all the reviews and all the ravings about this book, I made the mistake of spending my money on it! Alas! What a waste. Its like one gigantic piece of mish-mash-mess. All the information might be in there (who knows). But, finding out the correct info is almost impossible! The scull driver is a joke. Another irritating thing about the book is that it attempts to throw all sorts of info at you, all at the same time! Guys, take a break. Present information, one at a time, and only when needed. Essentially, I was trying to write a driver to read information off my Nikon F100 onto my TP600 running Mandrake 8.0. And life was miserable till I finally started digging through some other driver code that you get with the kernel sources. Gosh, that made life so simple. But, when I first read this book, I was almost ready to give up writing Linux drivers. I didn't know where to start and where I would end up! I was lost, confused, and felt utterly hopeless. Also, I wondered if the other guys who had raved about this book were: 1. the authors and their friends? 2. guys who had no clue what they were talking/writing about? 3. guys who were happy to see that there was a book on Linux drivers, but neither bought nor read it! So, don't trust these reviews. This is one heck of a horrible book that you should most definitely stay away from. Cause if you read, you would never be able to write any useful drivers. Read the source.
See all 58 customer reviews on Amazon.com
|