Microsoft выложила бесплатный инструмент для написания драйверов

Фото: Ricardo Ricote Rodríguez / Attribution License

Microsoft опубликовала исходный код фреймворка Driver Module Framework для написания драйверов устройств Surface и был доступен лишь разработчикам компании.

Microsoft выпустила программную платформу (фреймворк) Driver Module Framework (DMF), призванную упростить процесс разработки структурированных WDF-драйверов (Windows Driver Frameworks) устройств для операционной системы Windows. Кроме того, по заявлению Microsoft, использование нового инструмента позволит программистам с легкостью повторно использовать собственный код в различных драйверах или делиться им с другими разработчиками.

DMF был создан командой Microsoft Devices специально для разработки драйверов устройств-трансформеров Surface и изначально предназначался только для внутреннего использования. Теперь же исходный код фреймворка опубликован на Github, популярном веб-сервисе для хостинга ИТ-проектов и их совместной разработки, под свободной лицензией MIT, и доступен всем желающим, сообщает CNews со ссылкой на сообщение компании.

Фреймворк DMF позволяет создать тонкую «прослойку» между реализацией драйвера и WDF, которая связывает между собой все отдельные модули драйвера и клиентский код, грамотно организуя процесс их взаимодействия.

ЕЩЕ ПО ТЕМЕ:Windows запустит подозрительные приложения в особой среде

Кроме того, каждый отдельно взятый модуль получает собственную область в контексте устройства, которая доступна только ему, что снимает с программиста обязанность предусматривать механизмы поочередного доступа каждого модуля к контексту устройства.

Обратные вызовы WDF (на схеме окрашены в красный цвет) теперь также существуют независимо друг от друга в каждом модуле, а DMF отвечает за перехват, перенаправление вызовов к соответствующим модулям, а также возвращение результата обработки данных модулями.

Подобный подход позволяет рассматривать модуль драйвера как самостоятельную единицу, которую при необходимости можно легко отделить от остального кода и перенести в другой проект практически без изменений, будучи уверенным, что он окажется работоспособным.

Еще по теме
Telegram начал рекомендовать каналы пользователям
Количество фейковых банковских приложений выросло на четверть
«Яндекс Карты» получили обновление для любителей гулять пешком
Windows 11 запустила рекламу в меню «Пуск»
смотреть все