Driver Development Part 1: Introduction to Drivers
Driver Development Part 2: Introduction to Implementing IOCTLs
Driver Development Part 3: Introduction to driver contexts
Driver Development Part 4: Introduction to device stacks
Driver Development Part 5: Introduction to the Transport Device Interface
Driver Development Part 6: Introduction to Display Drivers
From CodeProject.