Платформа драйвера пользовательского режима

редактировать
Платформа драйвера пользовательского режима (UMDF)
Разработчики) Microsoft
изначальный выпуск 12 октября 2004 г. ; 16 лет назад  ( 2004-10-12 )
Стабильный выпуск 2.27 / 24 марта 2019 г. ; 22 месяца назад  ( 2019-03-24 )
Репозиторий github.com / microsoft / Windows-драйвер-Frameworks
Написано в C, C ++
Операционная система Майкрософт Виндоус
Тип Платформа разработки драйверов устройств
Лицензия Лицензия MIT
Интернет сайт документы.microsoft.com / en-us / windows-hardware / drivers / wdf / overview-of-the-umdf

User-Mode Driver Framework ( UMDF ) представляет собой платформу разработки драйвера устройства впервые с Microsoft «s Windows Vista операционной системы, а также доступен для Windows XP. Это облегчает создание драйверов для определенных классов устройств.

Содержание
  • 1 Обзор
  • 2 История версий
  • 3 Архитектура
  • 4 См. Также
  • 5 ссылки
  • 6 Внешние ссылки
Обзор

Стандартные драйверы устройств может быть сложно написать, потому что они должны обрабатывать очень широкий диапазон состояний системы и устройств, особенно в многопоточной программной среде. Плохо написанные драйверы устройств могут нанести серьезный ущерб системе (например, BSoD и повреждение данных), поскольку все стандартные драйверы имеют высокие привилегии при прямом доступе к ядру. Платформа драйверов пользовательского режима изолирует ядро ​​от проблем прямого доступа к драйверам, вместо этого предоставляя новый класс драйверов с выделенным интерфейсом прикладного программирования на пользовательском уровне прерываний и управления памятью. В случае возникновения ошибки новая структура позволяет немедленно перезапустить драйвер, не влияя на систему. Это особенно полезно для устройств, которые периодически подключаются к системе или поддерживают горячую замену через технологию шины, такую ​​как USB или FireWire.

Согласно Microsoft, драйверы UMDF проще писать и отлаживать, чем драйверы режима ядра. Однако UMDF не будет использоваться для устройств с высокой производительностью или с отслеживанием состояния.

Первая версия UMDF была отправлена ​​как часть Windows Media Player версии 10 12 октября 2004 года. Под кодовым названием "Crescent" он был разработан для поддержки драйвера Media Transfer Protocol, и для него не было предоставлено никаких общедоступных интерфейсов или документации. Позже Microsoft решила превратить UMDF в платформу для разработки драйверов устройств.

История версий
  • Платформа драйверов пользовательского режима 1.5–1.9, поддерживает Windows XP и новее.
  • Платформа драйверов пользовательского режима 1.11 поддерживает Windows Vista и новее, а также Windows Server 2008 и новее.
  • User-Mode Driver Framework 2.0, поддерживающий Windows 8.1 и новее.
Архитектура

Драйвер UMDF - это библиотека DLL, основанная на модели компонентных объектов Microsoft (COM). Однако UMDF не использует COM для загрузки, выгрузки или управления параллелизмом ; он использует COM только как шаблон программирования, например, используя интерфейс COM IUnknown. При запуске UMDF вызывает DllGetClassObject, чтобы получить указатель на IClassFactory интерфейс в драйвере, а затем использует CreateInstance метод IClassFactory интерфейса для создания экземпляра объекта драйвера обратного вызова.

Объект драйвера - это экземпляр интерфейса IWDFDriver, предоставляемого платформой. Драйвер предоставляет набор обратных вызовов через COM-интерфейс IDriverEntry, который является основной точкой входа для настройки драйвера.

Смотрите также
использованная литература
внешние ссылки
Последняя правка сделана 2023-08-11 06:11:36
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте