We've got some new content up around driver writing that you might want to check out if you're into such things. There's a getting started article, an article about handling IRPs, and finally a piece about threads:
How to Write a Windows Driver
This document describes the basic steps for learning to create a driver for your device. The Windows DDK provides the development environment, tools, sample code, and documentation.
Handling IRPs: What Every Driver Writer Needs to Know
This paper presents an overview of the I/O request packet (IRP) mechanism that is used in the Microsoft Windows family of operating systems. It is intended to provide driver writers with a greater understanding of how I/O works in the operating system, and how their drivers should manage and respond to I/O requests.
Scheduling, Thread Context, and IRQL
This paper presents information about how thread scheduling, thread context, and a processor's current interrupt request level (IRQL) affect the operation of kernel-mode drivers for the Microsoft Windows family of operating systems. It is intended to provide driver writers with a greater understanding of the environment in which their code runs.