<p>The <a href="http://docs.sun.com/app/docs/doc/819-3196">Writing Device Drivers book</a> is up to 620 pages and still growing. I am considering breaking the book into multiple books, and I value your input on whether and how to do that.</p> <p><b>Whether</b></p> <p>In this age of internet searches and links, perhaps the information is equally easy or hard to find whether it is in one book or ten. Search engines place a high priority on the page title text. Currently, every page of the HTML version of the book is titled "Writing Device Drivers." If the book is divided into multiple books, your search could hit, for example, "Writing Solaris Drivers for Network Devices." Information might also be easier to find because level 1 sections would become chapters, and so forth. What do you think? Should this book be separated into multiple books?</p> <p><b>How</b></p> <p>Currently, <i>Writing Device Drivers</i> looks like this:</p> <p>1. Overview of Solaris Device Drivers<br> 2. Solaris Kernel and Device Tree<br> 3. Multithreading<br> 4. Properties<br> 5. Managing Events and Queueing Tasks<br> 6. Driver Autoconfiguration<br> 7. Device Access: Programmed I/O<br> 8. Interrupt Handlers<br> 9. Direct Memory Access (DMA)<br> 10. Mapping Device and Kernel Memory<br> 11. Device Context Management<br> 12. Power Management<br> 13. Hardening Solaris Drivers<br> 14. Layered Driver Interface (LDI)<br> 15. Drivers for Character Devices<br> 16. Drivers for Block Devices<br> 17. SCSI Target Drivers<br> 18. SCSI Host Bus Adapter Drivers<br> 19. Drivers for Network Devices<br> 20. USB Drivers<br> 21. Compiling, Loading, Packaging, and Testing Drivers<br> 22. Debugging, Testing, and Tuning Device Drivers<br> 23. Recommended Coding Practices<br> A. Hardware Overview<br> B. Summary of Solaris DDI/DKI Services<br> C. Making a Device Driver 64-Bit Ready<br> D. Console Frame Buffer Drivers</p> <p>I am thinking of keeping the following chapters in the Writing Device Drivers book: 1-16, 21-23, A, and C. That is still a pretty big book, but I believe that includes only information that applies to most or all drivers. Four additional books would cover writing drivers for network devices, storage devices, USB devices, and console frame buffers. Appendix B would be divided among the five books as appropriate.</p> <p>What do you think?</p> This message posted from opensolaris.org
