mi associo proponendo un'altra strada per lo sviluppo di driver, il WDM (Windows Driver Model).
Anche in questo caso per la compilazione si usa il ddk (Device Driver Development Kit) della microsoft. Il linguaggio utilizzato per lo sviluppo è il C (non C++). La Microsoft ha pubblicato un bel librone sull'argomento, Programming the microsoft windows model, ma comunque in giro si trova molto materiale.
Vi rimando ad un tutorial di base a mio avviso fatto bene (è in inglese, in italiano non si trova quasi niente):
http://www.catch22.net/tuts/kernel1.asp
Prima di iniziare comunque penso sia importante avere delle discrete conoscenze teoriche su cos'è veramente un driver, cos'è e come funziona un kernel nei diversi sitemi operativi. Per queste informazioni teoriche potete fare riferimento a wikipedia.