Windows 7 cómo identificar un controlador de error. Uso de Driver Verifier para corregir una pantalla azul de la muerte. Comprobación de controladores sin firmar

Un controlador es un programa necesario para sistema operativo y varias aplicaciones de software para interactuar con dispositivos de hardware conectados a él. Los componentes de hardware como sonido, tarjetas de video, impresoras, escáneres y todos necesitan un controlador compatible para funcionar correctamente.

Todos los controladores de dispositivos están diseñados para sistemas operativos específicos. Por ejemplo, los controladores de Windows XP serán diferentes de los controladores de Windows Vista, por lo tanto, es necesario tomar precauciones adicionales al instalar y actualizar los controladores de dispositivos, ya que la instalación de controladores incorrectos o incompatibles no solo puede dañar su dispositivo, sino también su sistema.

Causas comunes de errores del controlador

Algunas causas comunes de errores del controlador se enumeran a continuación:

  • Está tratando de usar un dispositivo de hardware que no está correctamente conectado a su computadora.
  • Dos o más controladores en el sistema son incompatibles entre sí.
  • El controlador o controladores instalados no son compatibles con su sistema.
  • Hay controladores innecesarios u obsoletos en la PC.

Pasos para corregir errores del controlador
El primer paso para corregir un error de controlador es asegurarse de que el dispositivo esté correctamente conectado a su sistema. Muchos dispositivos dan errores relacionados con la conexión, así que asegúrese de que su dispositivo esté conectado a su sistema correctamente. A continuación, debe asegurarse de que no haya problemas con los controladores. Puede hacerlo utilizando la utilidad Administrador de dispositivos que viene con su computadora. sistema de ventanas. Puede abrir el Administrador de dispositivos ejecutando directamente desarrollo msc desde línea de comando Comenzar>Completadoeso. Cuando abra el Administrador de dispositivos, verá una lista de todos los dispositivos conectados a su sistema. Puede identificar fácilmente un archivo defectuoso porque estará marcado con un triángulo amarillo con punto de exclamación en el interior. Haga clic derecho en un dispositivo para abrir su cuadro de diálogo de propiedades. En el cuadro de diálogo de propiedades, marque la sección Estado del dispositivo pestaña General. Los controladores se muestran en la pestaña Controladores de la ventana de propiedades. Aquí, realice una de las siguientes tareas:

  • Comprobar e instalar actualizaciones de controladores: Los controladores obsoletos son una de las principales causas de los errores del controlador. Para resolver este problema, haga clic en el botón Actualizar controlador.Se abre el asistente de actualización de hardware. Puede usar el asistente para actualizar el controlador. Se recomienda que primero descargue la actualización del controlador y la guarde en una ubicación conveniente en su disco duro, y luego inicie el proceso de actualización porque el asistente de actualización le pedirá que especifique una ubicación para instalar la actualización.
  • Retroceso del controlador: Si comenzó a recibir un error poco después de instalar una nueva actualización, es probable que la nueva actualización tenga errores. Para solucionar este problema, haga clic en el botón Reversión del controlador para volver a tu versión previa conductores
  • Desinstalación del controlador: Si hay problemas con los controladores actuales (archivos perdidos o dañados), lo mejor que puede hacer es hacer clic en Borrar para desinstalar el controlador actual y luego vuelva a instalar el controlador.

En caso de que no esté seguro de lo que está haciendo y si encuentra que las correcciones anteriores son un poco complicadas, se recomienda que elija una herramienta confiable de escaneo de controladores. Las herramientas de escaneo de controladores están diseñadas para verificar todos los controladores de dispositivos y asegurarse de que no estén actualizados. Cada vez que hay nuevas actualizaciones disponibles, Driver Scanner descarga e instala automáticamente las mejores actualizaciones para su computadora.

Con la utilidad del sistema Driver Verifier Manager suministrada con Windows Vista/7, puede realizar un diagnóstico completo de los controladores instalados en el sistema y encontrar componentes problemáticos que interrumpen el funcionamiento estable de la computadora y el equipo conectado a ella.

Para ejecutar la herramienta mencionada, debe iniciar sesión en Windows con derechos de administrador, luego en la barra de direcciones del menú Inicio -> Ejecutar, ingrese el comando verifier.exe y haga clic en Aceptar. Como resultado, se abrirá una ventana del administrador de verificación de controladores, en la que deberá rascarse la cabeza y decidir la opción adecuada para iniciar la utilidad. Puede realizar pruebas selectivas y completas de todos los controladores sin excepción.

Después de configurar el modo de operación del programa y presionar el botón "Finalizar", deberá reiniciar la computadora y esperar a que se cargue el sistema operativo. Si se encuentra un controlador defectuoso, Windows caerá en la llamada "Pantalla azul de la muerte" (BSOD - Blue Screen Of Death) e informará un error crítico que contiene información sobre el componente problemático, que debe tomarse con un lápiz.

El siguiente paso es eliminar los archivos del controlador defectuoso. Para hacer esto, mantenga presionada la tecla F8 al iniciar la computadora, inicie el sistema en modo seguro (Modo seguro) y luego estándar herramientas de windows eliminar el componente fallido. Luego deberá abrir la consola nuevamente e ingresar la instrucción verifier.exe /reset para desactivar la aplicación Driver Verifier Manager. Es importante tener en cuenta que también se requiere ingresar el último comando si la computadora se inicia correctamente, lo que indica que no hay controladores problemáticos.

Para obtener más información general sobre este tema, consulte el artículo "Uso del verificador de controladores para diagnosticar problemas con los controladores de Windows (avanzado)" en el sitio de soporte de Microsoft.

Indica un controlador del sistema que es poco probable que esté causando el problema (por ejemplo, win32k.sys). En este caso, necesitará un análisis serio del vertedero, lo que requiere un conocimiento y experiencia muy profundos en esta área. Sin embargo, puede verificar los controladores usted mismo utilizando el verificador integrado en el sistema operativo. verificador.exe. Aunque se trata en detalle en el artículo de la base de conocimiento de Microsoft Uso del verificador de controladores para solucionar problemas de controladores de Windows, el material presentado allí se presenta en un nivel bastante técnico. Lo siguiente es Breve descripción pasos a seguir para verificar los drivers.

En esta página

Primeros pasos con el verificador de controladores

En el menú ComenzarCorrer(o ComenzarBúsqueda) ingresar verificador y presione Entrar. Se iniciará el verificador de controladores. selecciona un artículo Crear parámetros personalizados (para código de programa) y presiona el boton Más lejos.

Seleccione opciones individuales de lista completa y presiona el boton Más lejos.

En el siguiente paso, marque todas las casillas excepto Simulación de falta de recursos y presiona el boton Más lejos.

En el siguiente paso, seleccione Seleccionar automáticamente controladores no firmados y presiona el boton Más lejos. Si no se encuentran controladores sin firmar, vaya a .

Controladores sin firmar

Si se encuentran controladores sin firmar, verá una lista de ellos.

Los controladores pueden pertenecer tanto a dispositivos como a aplicaciones. No cierre la ventana Driver Verifier ni haga clic en el botón Más lejos ahora.

Buscar controladores actualizados

Debe verificar si hay controladores actualizados.

  1. Si ve un controlador de aplicación en la lista, visite el sitio web del fabricante; es posible que la aplicación se haya actualizado. Si no hay una versión actualizada, puede intentar desinstalar la aplicación (siempre puede volver a instalarla más tarde). Si los errores críticos se detienen, esa fue la causa.
  2. Si ve un controlador de dispositivo en la lista y está ejecutando Windows Vista, use el actualizaciones de windows para buscar nuevos controladores. Este método funciona bien para Windows Vista porque muchos fabricantes de dispositivos trabajan con Microsoft para que sus controladores estén disponibles para su descarga a través de Windows Update. En el panel de control, seleccione actualizacion de Windows y busque actualizaciones para el controlador de su dispositivo. Si se encuentra el controlador, instálelo.
  3. Si Windows Update no le ofrece nuevos controladores, visite el sitio web del fabricante del dispositivo. Tal vez haya nuevos controladores disponibles allí. Si tiene problemas para encontrar controladores, visite el foro Buscar controladores, firmware y manuales en OSzone.net.

Después de actualizar la aplicación o el controlador, cierre la ventana Driver Verifier, presionando un botón Cancelar(pero no Más lejos) . Reinicie su computadora y continúe trabajando en el sistema operativo. Si el error crítico ya no ocurre, lo solucionó actualizando el controlador.

Desinstalar controladores

Si no se encuentran nuevos controladores, intente desinstalar el controlador.

¡Atención! La eliminación de controladores hace que los dispositivos no funcionen. Después de un reinicio, en el mejor de los casos, el sistema operativo instalará el controlador adecuado desde su propia tienda de controladores. Si no está seguro de desinstalar un controlador en particular, no lo desinstale.

En el administrador de dispositivos ( ComenzarBuscar / Ejecutardevmgmt.mscDE ACUERDO) busque el dispositivo, haga clic derecho sobre él y seleccione entre Menú de contexto párrafo Propiedades. Luego ve a la pestaña Conductor y presiona el boton Borrar.

Comprobación de controladores sin firmar

¡Atención! Después de comprobar si hay controladores sin firmar, es posible que el sistema no arranque (vea a continuación cómo proceder en tal situación).

Si no desea desinstalar el controlador y/o desea buscar controladores no firmados, en la ventana Driver Verifier, haga clic en Más lejos. Se le pedirá que seleccione un disco físico.

Listo, luego reinicie su computadora. Si después de reiniciar ve una pantalla azul con un error, conductor problemático definido: su nombre se incluirá en el mensaje de error. Ingrese al modo seguro y restablezca todas las opciones de verificación del controlador escribiendo ComenzarBuscar / Ejecutar dominio verificador.exe /reset.

Si el sistema arrancó normalmente, la verificación de controladores no firmados fue exitosa; no son la fuente del problema. Puede ver una lista de controladores verificados ejecutando verificador.exe .

Dado que los controladores sin firmar no son la causa del error fatal, debe verificar otros controladores.

Comprobación de controlador personalizado

Si no se encuentran controladores sin firmar, o si la verificación del controlador no revela ningún problema, deberá realizar una verificación personalizada del controlador. En este caso, en la ventana que se muestra a continuación, seleccione el elemento Seleccione un nombre de conductor de la lista.

En el siguiente paso, se le pedirá que seleccione los controladores para verificar. No seleccione todos los controladores a la vez, ya que verificarlos requerirá mucho tiempo y recursos del sistema.

Por lo tanto, la verificación puede tener que llevarse a cabo en varias etapas. La secuencia paso a paso para seleccionar los controladores puede ser la siguiente:

  1. Controladores actualizados recientemente o aquellos que suelen causar problemas (controladores programas antivirus, cortafuegos, discos virtuales).
  2. Controladores no suministrados por Microsoft.
  3. Un grupo de 10 a 15 conductores a la vez.

Seleccione la unidad donde está instalado el sistema operativo y haga clic en Listo, luego reinicie su computadora.

¡Atención! Después de verificar los controladores, es posible que el sistema no arranque (vea a continuación cómo proceder en tal situación).

Si ve una pantalla azul con un error después de reiniciar, el controlador problemático ha sido identificado; su nombre se incluirá en el mensaje de error. Reinicie su computadora e inicie sesión modo seguro presionando F8 mientras carga. Después de iniciar sesión, restablezca todas las opciones de verificación del controlador escribiendo ComenzarBuscar / Ejecutar dominio verificador.exe /reset.

Si el sistema arrancó normalmente, los controladores seleccionados se verificaron con éxito; no son la fuente del problema. Puede ver una lista de controladores verificados ejecutando verificador.exe y eligiendo en el primer paso el elemento Mostrar información sobre los controladores probados actuales.

Ahora seleccione el siguiente grupo de controladores y verifique nuevamente.

Todos los controladores verificados, ¿qué sigue?

Si la verificación de todos los conductores fue exitosa, debo quitarme el sombrero ante su paciencia y perseverancia. Lo más probable es que los controladores no sean la causa del error crítico que se produce en su sistema. Es posible que el problema resida en el hardware de su computadora, por ejemplo, un disco duro defectuoso o memoria de acceso aleatorio o la fuente de alimentación tiene Poder insuficiente para garantizar el funcionamiento de todos los dispositivos. Puede haber otros problemas de hardware que tampoco se pueden detectar comprobando los controladores.

La utilidad que describiremos hoy se llama Driver Verifier y está incluida en todos los sistemas operativos, incluido Windows XP. Este programa le permite verificar e identificar los problemáticos que pueden dañar en gran medida el sistema. El problema más famoso es la pantalla azul de la muerte.

Los datos sobre dichos controladores se registran en un volcado de memoria para que se puedan realizar análisis posteriores. Entonces, la utilidad expone a los controladores a las llamadas situaciones estresantes (pruebas), creando condiciones visuales extremas, por ejemplo, falta de memoria, varios bloqueos, IRQL, controles IRP, DMA, etc., control de E / S. En otras palabras, hay una imitación de situaciones tan extremas que, durante el trabajo normal con Windows, no deberían serlo, o no suceden con frecuencia. Por lo tanto, la utilidad le permite identificar dichos controladores que pueden provocar un apagado de emergencia del sistema.

Como dije, la utilidad está integrada en todo. Versiones de Windows y esta en camino %windir%\system32. Además, la utilidad se puede utilizar en dos versiones: línea de comandos e interfaz gráfica.

Entonces, para ejecutar la utilidad para verificar los controladores, es necesario en la ventana "Correr" escriba el siguiente comando:

verificador

Se abre una ventana con la configuración necesaria, en la que seleccionamos el segundo elemento: "Crear opciones personalizadas" o "Crear configuraciones personalizadas".

Ahora necesitamos ordenar el contenido, para esto, en la parte superior de la tabla, haga clic en la palabra Proveedor. Ahora puede seleccionar todos los controladores. Por cierto, no se pueden seleccionar controladores de Microsoft.

Ahora puedes presionar el botón Finalizar, luego se le pedirá que reinicie el sistema.

Entonces, el reinicio ha pasado, ahora el sistema se iniciará en el modo de verificación del controlador. La utilidad se ejecutará en segundo plano, realizando varias pruebas. Puede trabajar de forma segura en la computadora hasta el final de la utilidad. Después del trabajo, el archivo de información se guardará en el volcado de memoria. Dicho archivo generalmente se encuentra a lo largo de la ruta: C:\Windows\Minivolcado\*.dmp. Ahora se puede analizar, por ejemplo, con Windbg, u otro programa similar.

Si dentro de unos días resultó que el problema no se repitió, entonces podemos decir que el problema no está en absoluto en los controladores y tendrá que buscar la causa en otra parte. Mientras tanto, ya podemos desactivar el modo de verificación del controlador. Quiero decir de inmediato que este modo ralentiza enormemente el sistema, por lo tanto, no se recomienda trabajar con él con frecuencia.

Puede deshabilitar la utilidad de esta manera: en la línea de comando, ingrese el siguiente comando:

Eso es todo. Espero que este artículo te haya ayudado a resolver tus problemas.

Le advertimos que cualquier experimento con controladores es peligroso y puede dañar el sistema. Es mejor hacer una copia de seguridad del sistema con anticipación y luego no cruzar los dedos eliminando otro controlador sospechoso de Windows.

Y tan pronto como no regañan ventanas desde microsoft, llamando a la pobre cosa lenta y con errores e incluso inestable. Solo que ahora, nadie tiene prisa por rechazarlo y, en general, es poco probable que alguna vez lo rechacen. Por lo tanto, en lugar de regañar a los desarrolladores pobres y difundir una llama sin sentido, sería bueno averiguar: ¿por qué, de hecho, el sistema tiene errores? Te diré un pequeño secreto. En las notorias pantallas de la muerte y el trabajo inestable ventanas en la gran mayoría de los casos, los controladores de terceros tienen la culpa, y el sistema operativo en sí no tiene absolutamente nada que ver con eso. Ahora le diremos cómo detectar dichos controladores y eliminarlos del sistema.

Los defectos de diseño del controlador pueden ser de naturaleza muy diferente: desde caer en la pantalla azul de la muerte ( BSOD- Pantalla azul de la muerte) y a la ralentización del ordenador y al comportamiento extraño de algunas aplicaciones de aplicación que no tienen nada que ver con el controlador.

La pantalla azul de la muerte es notable (¡sin ninguna ironía!) ya que señala claramente la presencia de un problema grave y da un consejo sobre dónde excavar. A menudo (pero no siempre) el nombre del conductor "culpable" se muestra directamente en la esquina superior derecha de la pantalla azul de la muerte. Sin embargo, puede que no esté allí o, peor aún, que esté el nombre de un conductor completamente extranjero.

Entonces, por ejemplo, un controlador de tarjeta de video bastante común Matrox G450 tiende a destruir las estructuras subyacentes del subsistema de gráficos ventanas 2000 , lo que da como resultado que el BSOD muestre el nombre del controlador del sistema win32k.sys, que implementa una parte importante de las funciones de USER y GDI y que, por supuesto, no tiene nada que ver. Entonces, la interpretación del testimonio de la pantalla azul de la muerte es magia, intuición, ciencia y arte, un poco de todo.

Además de los defectos del controlador, las pantallas azules de la muerte también pueden ser causadas por fallas de hardware, como un procesador overclockeado, RAM defectuosa, un controlador torcido disco duro, una tarjeta PCI que no está completamente insertada en la ranura, un no contacto en uno de los conectores, una mala fuente de alimentación, un condensador electrolítico hinchado en tarjeta madre. Y los últimos hacen pucheros diferentes razones: debido al sobrecalentamiento de un procesador cercano, falta de condensadores cerámicos, "no informados" por el fabricante (como resultado de lo cual, el componente HF atraviesa el electrolito y lo calienta), finalmente, debido a la fuga de transistores clave en el estabilizador unidad. Por eso, antes de cortar leña, es necesario asegurarse de que la plancha sobre la que nos sentamos esté en pleno funcionamiento. ¿Y cómo se puede hacer esto?

Enfrentamiento con hierro

Las pantallas azules de muerte causadas por fallas de hardware son espontáneas, aparecen de manera impredecible e independientemente de las acciones específicas del usuario. Las aplicaciones de aplicaciones también comienzan a emitir errores críticos en una variedad de lugares, y los códigos de error, las direcciones y otra información emitida por el sistema serán diferentes en todos los casos. Por cierto, los controladores que procesan solicitudes asíncronas de dispositivos de E/S, por ejemplo redes inalámbricas, se comportan casi exactamente igual. Las pantallas azules de muerte causadas por controladores defectuosos tienden a ocurrir al realizar un determinado conjunto de acciones y contienen información más o menos permanente.

Para quitar todas las sospechas de la plancha, basta con conectar otra al sistema. disco duro, instálelo prístino ventanas y trabajar en ello durante un tiempo. Si las pantallas azules de la muerte no desaparecen, entonces, de hecho, el hardware tiene la culpa y es hora de cambiarlo. La búsqueda de componentes defectuosos es un tema para una discusión aparte, que dejaremos para la próxima vez, pero por ahora, habiéndose arremangado, nos enfrentaremos a estos controladores insidiosos.

Leña sin certificado inmediatamente en el horno.

El conjunto completo de herramientas necesarias para el desarrollo de controladores ( DDK– Driver Development Kit), Microsoft distribuye de forma gratuita junto con la documentación que lo acompaña. Conductores, a veces muy buggy e inestables.

Para evitar que tal caos suceda, microsoft En la antigüedad, introdujo un procedimiento para certificar que los conductores cumplen con los requisitos para ellos, después de lo cual se emite una firma digital para el conductor. O... no se emitió, y se fue a revisión. Y aunque la certificación es solo un procedimiento formal que no garantiza la ausencia de errores fatales y defectos de desarrollo, aún elimina algunos de los controladores francamente "pioneros".

Idealmente, solo los controladores firmados digitalmente deben mantenerse en el sistema. Y aunque una firma digital no es una póliza de seguro, su presencia ya indica un cierto nivel de cultura de desarrollo. Conductores sin firma digital son peores que un cerdo en un golpe y deben eliminarse si es posible (especialmente porque muchos de ellos son malware instalado por rootkits o mecanismos de defensa agresivos que penetran profundamente en el sistema y hacen que se vuelva inestable). En resumen, no generará demagogia, pero intentemos responder una pregunta simple: ¿cómo hacer una lista de controladores sin firma digital?

La utilidad nos ayudará con esto. sigverif.exe, incluido en el conjunto de entrega del sistema operativo estándar y ubicado en el directorio WINNT\System32. Ejecútelo y vea el cuadro de diálogo. Presionamos el botón “Avanzado” y en la pestaña “Buscar” configuramos los criterios de selección moviendo el botón de radio desde la posición “Notificar sobre archivos del sistema sin firmar” (donde estaba por defecto) a la posición “Buscar otros archivos no firmado con firma digital”. Después de eso, en las "Opciones de búsqueda" abra el cuadro "Buscar archivos del siguiente tipo" y seleccione "*.sys", y debajo especificamos la carpeta para buscar "C: \ WINNT", asegúrese de marcar la casilla “Incluir subcarpetas”.

De hecho, estrictamente hablando, no se requiere que los controladores tengan una extensión sys y están lejos de estar siempre limitados al directorio WINNT, estando en los directorios de "sus" aplicaciones, y algunas aplicaciones incluso almacenan controladores ... ¡dentro de sí mismas! Inmediatamente después del lanzamiento (o en cualquier otro momento), guardan el archivo en el disco en el directorio actual o temporal, cargan el controlador en la memoria y... ¡lo eliminan inmediatamente del disco! No solo los virus maliciosos hacen esto, sino también programas bastante respetables, como algunas utilidades de Mark Russinovich, un conocido investigador de Windows.

Por lo tanto, por la pureza del experimento, no nos perjudica en absoluto obtener una lista de controladores ubicados en este momento en la memoria y compararlos con los controladores en el disco. Las palabras "en este momento" son clave, ya que la carga/descarga de controladores puede realizarse de forma gratuita sin reiniciar el sistema operativo. Es recomendable realizar esta operación varias veces ejecutando la utilidad de línea de comandos drivers.exe, que forma parte del DDK, que se puede descargar desde el servidor de Microsoft. Lanzado sin ningún interruptor de línea de comando, la utilidad unidades.exe vuelca toda la información en pantalla, lo que no es bueno, ya que suele haber muchos drivers en el sistema y no caben en pantalla. Sin embargo, la religión nos permite redirigir el flujo de salida a Archivo de texto(drivers.exe >file-name.txt ) abierto por cualquier editor de texto- incluso con Word, incluso con un bloc de notas. Luego solo queda seleccionar un bloque vertical (que el bloc de notas no permite) y obtener una lista de controladores. ¡Directamente desde el núcleo del sistema operativo!

Si falta al menos uno de estos controladores en el directorio C:\WINNT\, ¡no se verificará su firma digital! Naturalmente, un controlador de este tipo llama la atención de inmediato, y tenemos una pregunta razonable: ¿de dónde viene? Primero, escaneamos todos los directorios en el disco; si no está allí, establezca un punto de interrupción en la función CreateFileW de Soft-Ice y observe los argumentos que se le pasan. Tarde o temprano, nos encontraremos con nuestro conductor de buggy, después de lo cual todo lo que queda es mirar la esquina inferior derecha de la pantalla de Soft-Ice, donde se muestra el nombre del proceso que lo creó. Para obtener más detalles, consulte el libro "Técnicas para depurar programas sin códigos fuente", cuya copia electrónica se puede encontrar en el servidor ftp o http nezumi.org.ru, así como en nuestro disco. Y seguimos atormentando la utilidad. sigverif.exe.

Después de hacer clic en "Aceptar", "Iniciar", aparecerá un "termómetro" en la pantalla, mostrando el progreso, y el disco duro comenzará a crujir con todas las cabezas que tiene. Al finalizar, se compilará y mostrará en la pantalla una lista de controladores sin firma digital.

Algunos exaltados sugieren, para limpiar el sistema de herejía, eliminar todos los controladores no firmados; luego, dicen, todos los problemas se eliminarán como una cola. ¿Y cómo se puede hacer esto? La solución más grosera es simplemente tomarlos y eliminarlos del disco a través de FAR o Explorer (¡por supuesto, con derechos de administrador!). Pero las consecuencias de tal operación pueden resultar muy deplorables, y es mejor, haciendo clic con el botón derecho en el ícono del controlador en Explorer, para encontrar el nombre del fabricante en las "Propiedades", mediante el cual puede determinar qué aplicación/pieza de hardware instaló este controlador y desinstálelo de manera civilizada. Es cierto que hay un "pero".

La siguiente figura destaca el controlador g400m.sys, que viene con la tarjeta Matrox G450, y aunque Matrox no es una empresa débil en absoluto, no recibió una firma digital (o Microsoft no la dio, o la propia Matrox no quiso molestarse). Naturalmente, después de eliminarlo del sistema, deberá olvidarse del modo SVGA. Sin embargo, puede ir al sitio web de Matrox descargando la última versión del controlador (ya está firmado digitalmente). Solo que ahora... tanto la versión firmada como la no firmada contienen muchos errores fatales, en particular, como resultado de una combinación de ciertas circunstancias al intentar cambiar al modo de superposición, el sistema falla en un BSOD, ya que el controlador intenta liberarse. memoria ya liberada.

Por lo tanto, la presencia/ausencia de una firma digital en sí misma no significa nada, e incluso si usamos solo controladores firmados, esto no nos da ninguna garantía de estabilidad.

Aquí es donde pasamos a la segunda parte del artículo, a saber, probar a los conductores en condiciones cercanas al combate.

Organizamos una prueba real para leña.

El DDK incluye una maravillosa utilidad conductor Verificador, que crea las condiciones más severas para los conductores, al borde del extremo y el suicidio, en las que la probabilidad de falla es máxima, y ​​el nombre de un controlador defectuoso se determina con la mayor precisión (incluso si no sufre debido a defectos de desarrollo, pero destruye la estructura de datos de otros controladores).

Es importante observar que conductor Verificador No es una cura, sino sólo una herramienta de diagnóstico. Todavía no te salvará de las fallas (por el contrario, aumentará su intensidad en un par de órdenes de magnitud), pero ayudará a identificar al conductor "malo" con un grado suficiente de certeza.

Entonces, ejecute verifier.exe, vea la ventana conductor Verificador gerente, vaya a la pestaña Configuración y mueva el botón de radio a la posición Verificar todos los conductores, luego de lo cual presionamos el botón "Configuración preferida", que establece los siguientes tipos de controles (tipo de verificación):

  • Especial piscina- A los controladores marcados se les asignará un área de memoria especial para la asignación, que no es muy rápida, pero es capaz de detectar la mayoría de los tipos de destrucción de datos propios y de otras personas.
  • fuerza IRQL comprobación. IRQL significa Nivel de Solicitud de Interrupción. El error más común que cometen los desarrolladores de controladores es intentar acceder a la memoria en un IRQL en el que el administrador de intercambio no funciona. Y si la página requerida de repente resulta ser forzada al disco, el sistema se convertirá en una pantalla azul con la inscripción "IRQL_LESS_OR_EQULAR". Forzar este modo fuerza las páginas del controlador a disco, por lo que el defecto de desarrollo se manifiesta en el 100% de los casos.
  • bajo recurso simulación es útil instalarlo para ver cómo se comportará el controlador en caso de una falta catastrófica de recursos del sistema, pero esto no se puede hacer, pero es mejor dejar la casilla de verificación Pool tracking (seguimiento de la corrección del manejo del pool de memoria ). Los errores de entrada/salida (verificación de E/S) constituyen una parte insignificante de todos los errores, por lo que la posición de esta casilla de verificación es, en general, completamente acrítica.

Habiendo terminado con la elección de la configuración, presionamos el botón "Aplicar" (aplicar) y, como se nos ofrece, reiniciamos.

Tan pronto como se inicia el arranque, el sistema se ralentizará notablemente, lo que debería, ya que el kernel realiza muchas más comprobaciones de lo habitual. Cuando se encuentran errores, una pantalla azul de la muerte parpadea con el nombre del controlador y alguna otra información útil para los desarrolladores, pero inútil para nosotros. Todo lo que podemos hacer es actualizar el controlador al máximo ultima versión o negarse a usar el programa (hardware) que lo usa. En realidad, tenemos un poco más de opciones para encender leña cruda, pero hablaremos de eso más adelante.

Puede averiguar el estado de verificación en cualquier momento ejecutando verificador.exe. La pestaña Estado del controlador enumera el estado de todos los controladores detectados con una explicación de la situación actual. El estado Cargado significa que este controlador se ha cargado y probado al menos una vez (pero quizás no completamente, es decir, no se han resuelto todas las secciones del controlador). El estado Descargado significa que el controlador ha sido cargado, verificado (posiblemente parcialmente) y descargado por el sistema/programa que lo usa o por su propia voluntad. Esto último es especialmente cierto para los controladores sobrantes del equipo que se eliminó sacando bárbaramente las tarjetas de expansión de la ranura, es decir, sin realizar una desinstalación. El conductor sobreviviente escanea el autobús, tratando de encontrar "su" equipo, interrumpe la búsqueda y luego se descarga de la memoria, por cierto, ralentiza el arranque del sistema (a veces de manera muy significativa) y entra en conflicto con otros conductores. Moraleja: ¡el equipo del sistema debe eliminarse de acuerdo con todas las reglas! Sin embargo, no todos los estados Descargados son un signo de una situación anormal, y antes de eliminar un conductor con dicho estado, debe averiguar qué tipo de reno es y de dónde proviene.

El estado Nunca cargado indica que este controlador aún no se ha cargado, lo que significa que no se ha verificado, por lo tanto, debe esperar ejecutando varios programas que pueda estar asociado a ella. Sin embargo, algunos controladores (especialmente los que se desinstalaron incorrectamente) no se cargan y, en consecuencia, nunca se verifican.

Después de trabajar con el sistema en el modo de prueba dura durante algún tiempo (desde varias horas hasta varios días), identificaremos casi todos los controladores defectuosos que sufrimos anteriormente y escribiremos sus nombres en una hoja de papel.

Puede devolver el sistema al modo normal (es decir, sin controles adicionales que consumen rendimiento) utilizando el mismo verificador. Regresamos a la pestaña Configuración, movemos el botón de radio a la posición Verificar controladores seleccionados (en este caso, no se debe seleccionar ningún controlador), hacemos clic en “Restablecer todo”, luego en “Aplicar” y reiniciamos. ¡Todos! El sistema ahora está funcionando a velocidad normal, pero no hay controles.

¿Qué hacer con la leña cruda?

Pero realmente, ¿qué se puede hacer con un controlador defectuoso? Los piratas informáticos que saben cómo sostener un depurador en sus manos, con suficiente tiempo libre, pueden desarmarlo (gracias, los controladores suelen ser de tamaño pequeño), encontrar un error y encontrar una forma de solucionarlo, pero ... esto es demasiado laborioso.

Desechar el controlador (junto con el hardware/programa que lo usa) tampoco es una opción. Aunque si se sabe que las pantallas azules de la muerte tienen la culpa tarjeta de sonido fabricante chino desconocido que vale $ 20, entonces tenemos una motivación bastante importante para reemplazarlo con algo más digno. Pero esto, de hecho, está claro para todos y no necesita comentarios adicionales.

Pero no todo el mundo sabe que una gran cantidad de bloqueos y pantallas azules de la muerte se deben al hecho de que un controlador desarrollado (y probado) en un entorno de un solo procesador se instala en una máquina con dos procesadores. Por "procesador dual" aquí nos referimos tanto a una plataforma real con dos piedras como a procesadores Hyper-Threading / multi-core. Es sabido (y confirmado por un gran número de pruebas) que computador de casa dos procesadores son absolutamente inútiles, ya que en la gran mayoría de aplicaciones prácticamente no hay aumento de rendimiento.

Por lo tanto, si el sistema es inestable y, por una razón u otra, no es posible deshacerse del controlador defectuoso, puede intentar ingresar Configuración del BIOS, convirtiendo su máquina de "dos procesadores virtuales" en una de un solo procesador. Se puede lograr un efecto similar abriendo el archivo boot.ini (en computadoras con Windows NT/2000/XP está ubicado en el directorio raíz de la unidad lógica en la que está instalado el sistema) y agregando la clave /ONECPU, y luego reinicie con la esperanza de que los errores desaparezcan.

Listado 1

Un ejemplo de un archivo boot.ini típico


tiempo de espera = 30

multi(0)disco(0)rdisk(0)partición(1)\WINNT="Windows 2000 Pro" /fastdetect /SOS

Listado 2

Configuramos el sistema para usar un solo procesador de todos los disponibles


tiempo de espera = 30
predeterminado=multi(0)disco(0)rdisk(0)partición(1)\WINNT
multi(0)disco(0)rdisk(0)partición(1)\WINNT="Windows 2000 Pro" /fastdetect /SOS /ONECPU

pero en ventanas Vista no hay un archivo boot.ini, y aunque hay una opción (temporal) para configurar sus ajustes de arranque con utilidad especial, Microsoft planea eliminar por completo esta laguna, de modo que solo quede la configuración del BIOS. Sin embargo, en lo que respecta Vista, luego, cuando cambien a él, los desarrolladores de controladores probablemente adquirirán máquinas multiprocesador (ya que simplemente no habrá otras a la venta) y probarán sus creaciones en un entorno multiprocesador.

Otro punto sutil. Recuerde, dijimos anteriormente que el error más común que cometen los desarrolladores de controladores es acceder a la memoria reemplazada en un nivel IRQL en el que el administrador de intercambio no funciona, y si la página solicitada no está en la memoria, ¿se produce un bloqueo? La solución obvia aquí sería aumentar la memoria RAM hasta el punto en que prácticamente no se produzca el desplazamiento de páginas a disco. A los precios actuales de la memoria, casi todos pueden permitirse comprar un par de "dados" nuevos. Pero hay una solución más accesible (y más elegante) al problema. Si el parámetro DisablePagingExecutive, ubicado en la siguiente sucursal de registro HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\MemoryManagement, igual a uno(cero por defecto), los componentes nucleares no serán reemplazados. Por lo tanto, simplemente iniciamos el "Editor de registro", cambiamos este preciado parámetro y reiniciamos (los cambios surten efecto solo después de un reinicio), con la esperanza de que esto ayude a resolver el problema de las fallas.




Parte superior