Linux Device Drivers

Linux Device Drivers

Paperback(Third Edition)

$31.56 $39.95 Save 21% Current price is $31.56, Original price is $39.95. You Save 21%.
View All Available Formats & Editions
Eligible for FREE SHIPPING
  • Get it by Thursday, June 21 , Order now and choose Expedited Delivery during checkout.
    Same Day delivery in Manhattan. 


Linux Device Drivers by Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman

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.

Product Details

ISBN-13: 9780596005900
Publisher: O'Reilly Media, Incorporated
Publication date: 02/14/2005
Edition description: Third Edition
Pages: 640
Sales rank: 585,940
Product dimensions: 7.00(w) x 9.19(h) x 1.30(d)

About the Author

Jonathan Corbet got his first look at the BSD Unix source back in 1981, when an instructor at the University of Colorado let him "fix" the paging algorithm. He has been digging around inside every system he could get his hands on ever since, working on drivers for VAX, Sun, Ardent, and x86 systems on the way. He got his first Linux system in 1993, and has never looked back. Mr. Corbet is currently the co-founder and executive editor of Linux Weekly News (; he lives in Boulder, Colorado with his wife and two children.

Alessandro installed Linux 0.99.14 soon after getting his degree as electronic engineer. He then received a Ph.D. in computer science at the University of Pavia despite his aversion toward modern technology. He left the University after getting his Ph.D. because he didn't want to write articles. He now works as a free lancer writing device drivers and, um...articles. He used to be a young hacker before his babies were born; he's now an old advocate of Free Software who developed a bias for non-PC computer platforms.

Greg Kroah-Hartman has been writing Linux kernel drivers since 1999, and is currently the maintainer for the USB, PCI, I2C, driver core, and sysfs kernel subsystems. He is also the maintainer of the udev and hotplug userspace programs, as well as being a Gentoo kernel maintainer, ensuring that his email inbox is never empty. He is a contributing editor to Linux Journal Magazine, and works for IBM's Linux Technology Center, doing various Linux kernel related tasks.

Table of Contents

  • Preface
  • Chapter 1: An Introduction to Device Drivers
  • Chapter 2: Building and Running Modules
  • Chapter 3: Char Drivers
  • Chapter 4: Debugging Techniques
  • Chapter 5: Concurrency and Race Conditions
  • Chapter 6: Advanced Char Driver Operations
  • Chapter 7: Time, Delays, and Deferred Work
  • Chapter 8: Allocating Memory
  • Chapter 9: Communicating with Hardware
  • Chapter 10: Interrupt Handling
  • Chapter 11: Data Types in the Kernel
  • Chapter 12: PCI Drivers
  • Chapter 13: USB Drivers
  • Chapter 14: The Linux Device Model
  • Chapter 15: Memory Mapping and DMA
  • Chapter 16: Block Drivers
  • Chapter 17: Network Drivers
  • Chapter 18: TTY Drivers
  • Chapter 19: Bibliography

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews

Linux Device Drivers 4.7 out of 5 based on 0 ratings. 3 reviews.
Guest More than 1 year ago
[A review of the 3RD EDITION, 2005.] Device drivers will always be a small speciality in any operating system. Linux is no exception. While it grows strongly, most programmers using it simply can ignore issues of hooking up to various hardware items. Someone has already worked those out. Well, here you are that someone and this book addresses many of your needs. The coding is in C. No fancy object oriented stuff for you. Many higher level OO programmers are simply unaware of the extra overhead it takes. But you need to maximise performance, so it is C for you. Plus, to understand much of the book, it really helps to have written some assembly code, because it makes it easier to understand many low level operations discussed. Prior acquaintance with the overall design of a linux memory manager and interrupt handlers is also good. The book explains well individual issues as they arise. But having a clear, top-down understanding of the linux kernel may give you more context to understand the chapters.
Anonymous More than 1 year ago
Anonymous More than 1 year ago