header photo

Levana Technologies

Embedded Linux, Python, IoT & Machine Learning Training

Linux Device Drivers and Kernel Programming Training Workshop

Course Duration: 2 Full Days

Course Outline:

  • Linux Device Drivers and Kernel Development
  • An introduction to device drivers
  • Kernel Module Programming Basics
  • Kernel Debugging Techniques
  • Accessing Hardware Mechanisms  
  • The proc file system programming
  • Communicating with Hardware  
  • Hardware and Interrupt Handling
  • Tasklets and Bottom halves
  • Kernel Threads
  • Sleep and wakeup (wait queues)
  • Buffer allocation
  • Memory Management
  • Kernel Synchronization   
  • Concurrency and Race Conditions
  • Time, Delays and Deferred Work
  • The Linux Device Model
  • Character Device Drivers
  • Enhanced Character Device Drivers
  • Programming with ioctl( )
  • Netlink socket interface
  • Network Drivers
  • Adding a Driver to the Kernel Tree
  • A sample device driver project