Developing Linux Device Drivers (LFD331) - Course Outline

Next Available Class

Chicago +VIRTUAL



On Sale Now


before August 13

Enroll Now


Corporate Approval Toolkit

A text icon linking to the trainign quote page

Watch the Free Linux Tutorial: How To Build Character Drivers For The Linux Kernel

Course Outline

« Return to Course Description.

  1. Introduction
  2. Preliminaries
  3. Device Drivers
  4. Modules I: Basics
  5. Character Devices
  6. Kernel Features
  7. Interrupts and Exceptions
  8. Modules II: Exporting, Licensing and Dynamic Loading
  9. Debugging Techniques
  10. Timing and Timers
  11. Race Conditions and Synchronization Methods
  12. ioctls
  13. Unified Device Model and sysfs
  14. Firmware
  15. Memory Management and Allocation
  16. Transferring Between User and Kernel Space
  17. Sleeping and Wait Queues
  18. Interrupt Handling: Deferrable Functions and User Drivers
  19. Hardware I/O
  20. PCI
  21. Platform Drivers**
  22. Device Trees**
  23. Direct Memory Access (DMA)
  24. Network Drivers I: Basics
  25. Network Drivers II: Data Structures
  26. Network Drivers III: Transmission and Reception
  27. Network Drivers IV: Selected Topics
  28. USB Drivers
  29. Memory Technology Devices**
  30. Power Management
  31. The Virtual File System
  32. I/O Scheduling
  33. Block Drivers
  34. Filesystems in User-Space (FUSE)**
  35. Journalling Filesystems**
** These sections may be considered in part or in whole as optional. They contain either background reference material, specialized topics, or advanced subjects. The instructor may choose to cover or not cover them depending on classroom experience and time constraints.

« Return to Course Description.