Поделиться через


Видео: отладка драйверов UMDF

В этом разделе содержится серия видеороликов Abhishek Ram, демонстрирующих отладку драйверов User-Mode Driver Framework (UMDF).

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

Хотя в видео демонстрируется отладка драйвера UMDF версии 1 в более ранних версиях Windows, вы по-прежнему можете использовать те же методы с драйвером UMDF версии 2, работающим в текущих версиях Windows.

Примечание В этом видео описываются команды расширения отладчика в Wudfext.dll, которые можно использовать только для отладки драйверов UMDF версии 1. Для отладки драйверов UMDF, начиная с UMDF версии 2.0, необходимо использовать библиотеку расширения отладчика Wdfkd.dll. В Wdfkd.dll есть эквиваленты для всех расширений в Wudfext.dll. Дополнительные сведения см. в разделах Сводка расширений отладчика в Wudfext.dll и Сводка расширений отладчика в Wdfkd.dll.

Дополнительные сведения об отладке UMDF см. в разделах, перечисленных в разделе Отладка драйверов WDF.

Предварительные требования

Чтобы максимально эффективно использовать это содержимое, вы должны иметь опыт работы с UMDF и средствами отладки для Windows. Так как каждый сеанс основан на предыдущем, рекомендуется просматривать эти демонстрации в указанном порядке.

Основные сведения и настройка

Рассматривается использование примеров WDK и комплекта обучения OSR USB-FX2.

В этом видео вы узнаете об основах отладки UMDF, включая подготовку тестового компьютера, использование средства Devcon для установки примера драйвера UMDF Echo, использование WdfVerifier для определения хост-процесса, в котором размещен данный драйвер UMDF, и использование WdfVerifier для присоединения хост-процесса к отладчику вовремя для отладки кода инициализации. В этом видео также показано, как получить список запущенных хост-процессов в диспетчере задач и просмотреть работающие драйверы в диспетчер устройств.

Изучение иерархии объектов с помощью расширений отладчика

В этой части вы узнаете, как начать отладку драйвера UMDF. В этом видео показано, как настроить пример драйвера OSR USB-FX2 и пример приложения, чтобы три экземпляра приложения отправляли драйверу запросы на управление чтением, записью и вводом-выводом устройства. Вы увидите, как запросы сначала передаются в отражатель, а затем в процесс узла драйвера пользовательского режима. В этом видео представлена иерархия объектов WDF для примера драйвера FX2 и рассматривается использование следующих расширений отладчика UMDF для обхода иерархии объектов UMDF:

Сведения о UMDF 2 см. в разделе Сводка расширений отладчика в Wdfkd.dll, например !wdfkd.wdfumdevstacks.

Доступ к usb-объектам платформы

Здесь вы узнаете, как изучить USB-объекты платформы драйвера. Для этого вы перейдете по иерархии объектов WDF, чтобы получить доступ к объектам USB-канала, объектам интерфейса USB и целевым объектам USB-ввода-вывода.

Запросы и очереди ввода-вывода

В этом видео вы будете использовать отладчик для изучения объектов запросов на ввод-вывод платформы драйвера и объектов очередей платформы.

Объекты файлов и объекты обратного вызова

В этой части вы узнаете, как изучить объекты файлов платформы, а также объекты обратного вызова драйвера.

Отслеживание запросов ввода-вывода, отправленных драйвером UMDF

Здесь вы узнаете, как использовать средство проверки приложений для отладки. Вы также узнаете, как отладить код инициализации драйвера и как отслеживать запросы, отправленные драйвером UMDF в стек ядра ниже.

Драйвер не выполняет запрос ввода-вывода

В последнем видео вы изучите случай, когда драйвер UMDF не выполняет полученный запрос, и узнаете о возможностях отслеживания объектов и ссылок на платформу.