img
share 分享

Linux设备驱动开发详解:基于最新的Linux4.0内核

作者:宋宝华

出版社:机械工业出版社

ISBN:9787111507895

VIP会员免费 (仅需0.8元/天) ¥ 45.0

温馨提示: 价值40000元的1000本电子书,VIP会员随意看哦!

电子书推荐

更多资源 展开

Linux设备驱动程序第三版 评分:

英文原版资料,一部经典的著作,O'Reilly出版 Chapter 1. An Introduction to Device Drivers Section 1.1. The Role of the Device Driver Section 1.2. Splitting the Kernel Section 1.3. Classes of Devices and Modules Section 1.4. Security Issues Section 1.5. Version Numbering Section 1.6. License Terms Section 1.7. Joining the Kernel Development Community Section 1.8. Overview of the Book Chapter 2. Building and Running Modules Section 2.1. Setting Up Your Test System Section 2.2. The Hello World Module Section 2.3. Kernel Modules Versus Applications Section 2.4. Compiling and Loading Section 2.5. The Kernel Symbol Table Section 2.6. Preliminaries Section 2.7. Initialization and Shutdown Section 2.8. Module Parameters Section 2.9. Doing It in User Space Section 2.10. Quick Reference Chapter 3. Char Drivers Section 3.1. The Design of scull Section 3.2. Major and Minor Numbers Section 3.3. Some Important Data Structures Section 3.4. Char Device Registration Section 3.5. open and release Section 3.6. scull's Memory Usage Section 3.7. read and write Section 3.8. Playing with the New Devices Section 3.9. Quick Reference Chapter 4. Debugging Techniques Section 4.1. Debugging Support in the Kernel Section 4.2. Debugging by Printing Section 4.3. Debugging by Querying Section 4.4. Debugging by Watching Section 4.5. Debugging System Faults Section 4.6. Debuggers and Related Tools Chapter 5. Concurrency and Race Conditions Section 5.1. Pitfalls in scull Section 5.2. Concurrency and Its Management Section 5.3. Semaphores and Mutexes Section 5.4. Completions Section 5.5. Spinlocks Section 5.6. Locking Traps Section 5.7. Alternatives to Locking Section 5.8. Quick Reference Chapter 6. Advanced Char Driver Operations Section 6.1. ioctl Section 6.2. Blocking I/O Section 6.3. poll and select Section 6.4. Asynchronous Notification Section 6.5. Seeking a Device Section 6.6. Access Control on a Device File Section 6.7. Quick Reference Chapter 7. Time, Delays, and Deferred Work Section 7.1. Measuring Time Lapses Section 7.2. Knowing the Current Time Section 7.3. Delaying Execution Section 7.4. Kernel Timers Section 7.5. Tasklets Section 7.6. Workqueues Section 7.7. Quick Reference Chapter 8. Allocating Memory Section 8.1. The Real Story of kmalloc Section 8.2. Lookaside Caches Section 8.3. get_free_page and Friends Section 8.4. vmalloc and Friends Section 8.5. Per-CPU Variables Section 8.6. Obtaining Large Buffers Section 8.7. Quick Reference Chapter 9. Communicating with Hardware Section 9.1. I/O Ports and I/O Memory Section 9.2. Using I/O Ports Section 9.3. An I/O Port Example Section 9.4. Using I/O Memory Section 9.5. Quick Reference Chapter 10. Interrupt Handling Section 10.1. Preparing the Parallel Port Section 10.2. Installing an Interrupt Handler Section 10.3. Implementing a Handler Section 10.4. Top and Bottom Halves Section 10.5. Interrupt Sharing Section 10.6. Interrupt-Driven I/O Section 10.7. Quick Reference Chapter 11. Data Types in the Kernel Section 11.1. Use of Standard C Types Section 11.2. Assigning an Explicit Size to Data Items Section 11.3. Interface-Specific Types Section 11.4. Other Portability Issues Section 11.5. Linked Lists Section 11.6. Quick Reference Chapter 12. PCI Drivers Section 12.1. The PCI Interface Section 12.2. A Look Back: ISA Section 12.3. PC/104 and PC/104+ Section 12.4. Other PC Buses Section 12.5. SBus Section 12.6. NuBus Section 12.7. External Buses Section 12.8. Quick Reference Chapter 13. USB Drivers Section 13.1. USB Device Basics Section 13.2. USB and Sysfs Section 13.3. USB Urbs Section 13.4. Writing a USB Driver Section 13.5. USB Transfers Without Urbs Section 13.6. Quick Reference Chapter 14. The Linux Device Model Section 14.1. Kobjects, Ksets, and Subsystems Section 14.2. Low-Level Sysfs Operations Section 14.3. Hotplug Event Generation Section 14.4. Buses, Devices, and Drivers Section 14.5. Classes Section 14.6. Putting It All Together Section 14.7. Hotplug Section 14.8. Dealing with Firmware Section 14.9. Quick Reference Chapter 15. Memory Mapping and DMA Section 15.1. Memory Management in Linux Section 15.2. The mmap Device Operation Section 15.3. Performing Direct I/O Section 15.4. Direct Memory Access Section 15.5. Quick Reference Chapter 16. Block Drivers Section 16.1. Registration Section 16.2. The Block Device Operations Section 16.3. Request Processing Section 16.4. Some Other Details Section 16.5. Quick Reference Chapter 17. Network Drivers Section 17.1. How snull Is Designed Section 17.2. Connecting to the Kernel Section 17.3. The net_device Structure in Detail Section 17.4. Opening and Closing Section 17.5. Packet Transmission Section 17.6. Packet Reception Section 17.7. The Interrupt Handler Section 17.8. Receive Interrupt Mitigation Section 17.9. Changes in Link State Section 17.10. The Socket Buffers Section 17.11. MAC Address Resolution Section 17.12. Custom ioctl Commands Section 17.13. Statistical Information Section 17.14. Multicast Section 17.15. A Few Other Details Section 17.16. Quick Reference Chapter 18. TTY Drivers Section 18.1. A Small TTY Driver Section 18.2. tty_driver Function Pointers Section 18.3. TTY Line Settings Section 18.4. ioctls Section 18.5. proc and sysfs Handling of TTY Devices Section 18.6. The tty_driver Structure in Detail Section 18.7. The tty_operations Structure in Detail Section 18.8. The tty_struct Structure in Detail Section 18.9. Quick Reference Chapter 19. Bibliography Section 19.1. Books Section 19.2. Web Sites Index

...展开详情
上传时间:2009-08 大小:1.32MB
热门图书