Linux Device Drivers, 3rd Edition

Author: Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman
4.0
All Stack Overflow 10
This Month Reddit 2

Comments

by the_gnarts   2019-07-21

> Wow, that's really great. Where do you even start to learn to program this kind of thing? Like accessing hardware

This: https://www.amazon.com/dp/0596005903/ should cover most of it.

by redsox44344   2019-07-21

This is the one I have:

https://www.amazon.com/Linux-Device-Drivers-Jonathan-Corbet/dp/0596005903

by anonymous   2017-09-05
sure, in my opinion these 3 books are essential, ["Linux Kernel Development", Robert Love](https://www.amazon.com/Linux-Kernel-Development-Robert-Love/dp/0672329468), ["Linux Device Drivers", Jonathan Corbet](https://www.amazon.com/Linux-Device-Drivers-Jonathan-Corbet/dp/0596005903/) and ["Understanding the Linux Kernel", Daniel P. Bovet](https://www.amazon.com/Understanding-Linux-Kernel-Third-Daniel/dp/0596005652). In addition, read and _understand_ the code. Make use of [LXR](http://lxr.free-electrons.com).
by thelsdj   2017-08-20

I had previously bought these books on recommendation for the same purpose but I never got to studying them myself so only take them as second-hand advice.

by dp   2017-08-20

For Windows drivers also see this blog: http://blogs.msdn.com/doronh/

For Linux based development, two good books come to mind: Linux Device Drivers and Linux Kernel Development. The Linux Device Drivers book can be a bit daunting so a good introduction to the Kernel is a useful starting point.