RESOLUCIÓN DE PROBLEMAS CON DRIVERS INCOMPATIBLES

CASO PRÁCTICO


Muchas veces chocamos con problemas de drivers incompatibles o que causan mal funcionamiento en Windows XP.

Las maneras de ver la estabilidad de un driver son:

1) Comportamiento en situaciones de ahorro de energía.
2) Comportamiento en el cierre de Windows.
3) Comportamiento en Windows en opciones especificas de memoria.

Antes de ver cómo realizar las pruebas, recordemos que el gran caballo de batalla en la actualidad suelen ser los drivers de dispositivos USB.
El mercado ha crecido exponencialmente, existe una gran competencia por sacar los productos (ya veremos que realmente son 4 los chips manejados), y se olvidan de lo fundamental: drivers estables. También esto último puede tener solución si nos armamos de paciencia. Lo veremos más adelante.


PRUEBAS A REALIZAR DESPUÉS DE INSTALAR UN DISPOSITIVO.


Con respecto a los puntos anteriores:

1) Suspender el sistema y ver cómo se comporta al levantarse. Lo mismo en hibernación.
2) Revisar si Windows apaga perfectamente. No debe, ni sacar una pantalla azul, ni reiniciarse Windows cuando le damos una orden de apagado.
3) Incorporar las opciones /PAE /3GB en el boot.ini para ver su comportamiento (opciones de uso de las extensiones de memoria, y opciones de reparto del espacio virtual de direcciones en Windows).

Para el punto 3), lo mejor que podemos hacer es modificar nuestro actual boot.ini para que nos muestre un menú con el que seamos capaces de arrancar en modo normal, PAE y PAE + 3GB. Para ello, debemos buscar el contenido del archivo oculto boot.ini y proceder a modificarlo. Mirad el contenido actual de vuestro boot.ini, que típicamente será de la forma:

[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

Lo que hacemos es repetir dos veces la última línea, colocándole las opciones y modificando el texto que nos mostrará el menú para poder identificar en qué situación estamos. Es decir:

[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional -PAE-" /fastdetect /PAE
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional -PAE+3GB-" /fastdetect /PAE /3GB

Con esto ya podemos arrancar windows con las opciones que deseemos, y por tanto ser capaces de comprobar la estabilidad de nuestro sistema actual, y, en caso de ser estable -que es lo que presuponemos- la estabilidad de un nuevo dispositivo y sus drivers -que es lo que pretendemos con el presente artículo-.

NOTA: los modem son muy problemáticos.... ya que no sólo tienen el chip, sino tambien firmware que incorpora el montador del dispositivo. Y por ello, difícilmente podemos hacer algo si el dispositivo lleva firmware interno. Los drivers en ese caso serán totalmente dependientes.


CASO PRÁCTICO


Hace unos días, adquirí un dispositivo ethernet (tarjeta de red) sobre USB 2.0. Había probado y usado correctamente tarjetas 10/100 sobre USB 1.1, pero evidentemente la velocidad estaba restringida a la máxima velocidad del puerto. El USB 1.1 da solo 12 Mb/s, que quitando el reservado para el sistema y los bytes de control de los mensajes, se quedan efectivo en unos 8 Mb/s. Una velocidad ridícula. Por ello estaba interesado en probar las tarjetas que soportasen USB 2.0

De los tres dispositivos que adquirí: logi3, Sitecom y otro de marca desconocida, cada uno con sus propios drivers, en la primera prueba, que fue la de cerrar Windows, sale una bonita pantalla azul con stop 0x0000000A.

Reviso en las páginas de los dos primeros: logi3, y los últimos drivers que tiene son del 2001 y son los mismo que me dieron con su CD. Mal asunto.
Reviso igualmente los de Sitecom (al menos son conocidos, y parecen mas serios), y lo mismo. Nada de nada.

Bien, alguna solución tiene que haber...

Sabiendo que realmente fabricantes de chips para dispositivos USB hay muy poquitos, contados con los dedos de la mano, es más que probable que el fabricante del chip tenga drivers ya que realmente los distribuidores / montadores de componentes dejan bastante que desear, y en cuanto sacan el producto al mercado se olvidan de él. Evidentemente todos los drivers anteriores eran *no* certificados.

Investigando uno de los drivers, el de Logi3, veo que usa un driver llamado: ax88172.sys y al ver sus propiedades, veo que pone ASIX Electronics.

Busco en Google por la casa matriz, y una vez localizada, veo con sorpresa que tiene drivers perfectos, más recientes y además certificados para XP (y para el resto de sistemas operativos).

Los descargo, los instalo en el logi3, y perfecto!..... tema solucionado.

Intento instalar el mismo driver en el Sitecom y no me deja. Este dispositivo usa uno llamado usb20l.sys. Entro en sus propiedades, y únicamente pone como fabricante y comentarios: USB 2.0. (desde luego, se han lucido con estas explicaciones...).

Con un editor hexadecimal entro en el código de dicho driver, y justo al final me encuentro un comentario que pone: 'based on ax88172.sys'. Bingo!. Es el mismo driver pero renombrado y cambiada la cadena identificadora en el .inf y en el dispositivo para simular que es uno propietario de Sitecom. (técnica"sucia" que usan algunos fabricantes).

Simplemente copio el ax88172.sys anterior sobre el usb20l.sys, y también perfecto.

Tema solucionado. :-)

----------------------------------------

Espero que estas experiencias os puedan servir de ayuda para solución de problemas...

--

José Manuel Tella Llop
jmtella@compuserve.com

Multinglés/JMT        

29 - febrero - 2004