Americas

  • United States

Asia

Oceania

Kernel-mode Driver Framework Review

– A mandatory, excellent framework for serious Windows kernel driver development. Just accept that you will still need to understand kernel internals; KMDF won't hide everything, but it will save your sanity.

// EvtDeviceAdd: Create device, queues, and interrupts NTSTATUS MyDeviceAdd(WDFDEVICE Device) WDF_IO_QUEUE_CONFIG queueConfig; WDF_IO_QUEUE_CONFIG_INIT_DEFAULT_QUEUE(&queueConfig, WdfIoQueueDispatchSequential); queueConfig.EvtIoRead = MyRead; return WdfIoQueueCreate(Device, &queueConfig, WDF_NO_OBJECT_ATTRIBUTES, WDF_NO_HANDLE); kernel-mode driver framework

If you are writing a new kernel-mode driver for Windows (excluding very specific graphics or storage miniports), you should be using KMDF . It turns a "write-a-bug-and-BSOD-the-system" discipline into a manageable, safe, and maintainable engineering task. – A mandatory, excellent framework for serious Windows

Executive Summary KMDF (part of WDF, introduced with Windows Vista) is a Microsoft-provided abstraction layer that fundamentally rewrites the rules for writing Windows kernel drivers. It replaces the archaic, terrifyingly complex Windows Driver Model (WDM) with an object-oriented, event-driven, and state-machine-based framework. and state-machine-based framework.