Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Este tema contiene una serie de vídeos de Abhishek Ram que muestran cómo depurar controladores de User-Mode Driver Framework (UMDF).
Después de ver los vídeos, estará familiarizado con las extensiones del depurador de UMDF y sabrá cómo usarlos en escenarios de depuración básicos.
Aunque los videos muestran la depuración de un controlador UMDF versión 1 en versiones anteriores de Windows, todavía puede usar las mismas técnicas con un controlador UMDF versión 2 que se ejecuta en las versiones actuales de Windows.
Nota En este vídeo se describen los comandos de extensión del depurador en Wudfext.dll, que puede usar solo para depurar controladores de la versión 1 de UMDF. Para depurar controladores UMDF a partir de la versión 2.0 de UMDF, debe usar la biblioteca de extensiones del depurador Wdfkd.dll. Hay equivalentes en Wdfkd.dll para todas las extensiones de Wudfext.dll. Para obtener más información, vea Resumen de extensiones del depurador en Wudfext.dll y Resumen de extensiones de depurador en Wdfkd.dll.
Para obtener más información sobre la depuración de UMDF, consulte los temas enumerados en Depuración de controladores WDF.
Prerrequisitos
Para sacar el máximo partido a este contenido, debe tener conocimientos prácticos de UMDF y las Herramientas de depuración para Windows. Dado que cada sesión se basa en la anterior, se recomienda que vea estas demostraciones en el orden indicado.
Conceptos básicos y configuración
Describe el uso de los ejemplos de WDK y el kit de aprendizaje de OSR USB-FX2.
En este vídeo, obtendrá información sobre los conceptos básicos de depuración de UMDF, incluida la preparación de la máquina de prueba, el uso de la herramienta Devcon para instalar el controlador de ejemplo de eco de UMDF, mediante WdfVerifier para identificar el proceso de host que hospeda un controlador UMDF determinado y mediante WdfVerifier para asociar el proceso de host al depurador a tiempo para depurar el código de inicialización. En este vídeo también se muestra cómo se pueden enumerar los procesos de host en ejecución en el Administrador de tareas y ver los controladores en ejecución en el Administrador de dispositivos.
Examen de la jerarquía de objetos con extensiones del depurador
En esta parte, aprenderá a iniciar la depuración de un controlador UMDF. En el vídeo se describe cómo configurar el ejemplo de controlador de USB-FX2 OSR y el ejemplo de aplicación para que tres instancias de la aplicación envíen solicitudes de control de lectura, escritura y E/S del dispositivo al controlador. Verá cómo fluyen primero las solicitudes al reflector y, a continuación, al proceso host del controlador en modo de usuario. En este vídeo se presenta la jerarquía de objetos WDF para el ejemplo de controlador FX2 y se describe cómo usar las siguientes extensiones del depurador de UMDF para atravesar la jerarquía de objetos UMDF:
Para UMDF 2, vea Resumen de extensiones del depurador en Wdfkd.dll, por ejemplo !wdfkd.wdfumdevstacks.
Acceso a objetos USB del framework
Aquí aprenderá a examinar los objetos USB del marco del controlador. Para ello, navegará por el objeto WDF hiearchy para llegar a los objetos de canalización USB, los objetos de interfaz USB y los objetos de destino de E/S USB.
Solicitudes y colas de E/S
En este vídeo, usará el depurador para examinar los objetos de solicitud de E/S del entorno del controlador y los objetos de cola del entorno.
Objetos de archivo y objetos callback
En esta parte, aprenderá a examinar los objetos de archivos del framework, así como los objetos de devolución de llamada del controlador.
Seguimiento de solicitudes de E/S enviadas por un controlador UMDF
Aquí aprenderá a usar la herramienta Comprobador de aplicaciones para ayudarle a depurar. También aprenderá a depurar el código de inicialización del controlador y a realizar un seguimiento de las solicitudes enviadas por un controlador UMDF a la pila del kernel inferior.
El controlador no completa una solicitud de E/S
En el vídeo final, investigará un caso cuando un controlador UMDF no complete una solicitud recibida y obtendrá información sobre las funcionalidades de seguimiento de objetos y seguimiento de referencias del marco.