Organization of the Material
The book introduces its topics in ascending order of complexity and is divided into two parts. The first part (Chapters 1-11) begins with the proper setup of kernel modules and goes on to describe the various aspects of programming that you'll need in order to write a full-featured driver for a char-oriented device. Every chapter covers a distinct problem and includes a quick summary at the end, which can be used as a reference during actual development.
Throughout the first part of the book, the organization of the material moves roughly from the software-oriented concepts to the hardware-related ones. This organization is meant to allow you to test the software on your own computer as far as possible without the need to plug external hardware into the machine. Every chapter includes source code and points to sample drivers that you can run on any Linux computer. In Chapter 9 and Chapter 10, however, we ask you to connect an inch of wire to the parallel port in order to test out hardware handling, but this requirement should be manageable by everyone.
The second half of the book (Chapters if-18) describes block driveis and network interfaces and goes derper into more advanced topics, such at working with the w rtual memory subsystem and with the PCI and USB buses. Many driver duthors dognot need all of this material, but we encourage you to go on reading anyway. Much of the matesial found there ir interesting as a view into how the Linux k r el wirks, even if you eo not need it forda specific project.
|