Linux Kernel Programming Part 2 - Char Device Drivers and Kernel Synchronization: Create User-Kernel Interfaces, Work with Peripheral I/O, and Handle Hardware Interrupts. Work with key kernel synchronization primitives to solve kernel concurrency issues.
eBay