При создании проекта Windows Driver в Visual Studio 2012 у вас есть много разных вариантов.В чем разница между драйвером WDM, драйвером KMDF и драйвером UMDF?
У вас есть page on MSDN, который поможет вам выбрать правильную модель драйвера для вашего устройства. Однако он не дает четкого объяснения точных различий между типами драйверов WDM, KMDF и UMDF и когда выбирать, какую модель.
Я ищу объяснение различий между моделями драйверов WDM, KMDF и UMDF, поэтому начинающим разработчикам драйверов Windows легко выбрать правильную модель.
Спасибо за объяснение, но пока еще не совсем ясно. Вы говорите, что каждый драйвер ядра является WDM-драйвером, но все ли драйверы драйверов WDM-драйверов? Почему WDM и KMDF два разных шаблона в VS2012? – lesderid
@lederid думает об этом с точки зрения Win32 и MFC (надеюсь, вы знакомы с обоими). Хотя каждая программа MFC является программой Win32, не каждая программа Win32 является программой MFC. KMDF сродни MFC: структура, которая может быть использована для скрытия некоторой сложности WDM.Итак, шаблоны отличаются тем, что они генерируют разные: один генерирует один вид проекта, а другой генерирует другой вид. Чтобы ответить на ваш другой вопрос, все современные драйверы * ядра * являются драйверами WDM; хотя есть и другие «устаревшие» модели драйверов ядра, они официально не поддерживаются и больше не должны использоваться. –