Modo DMA en dispositivos ATA/ATAPI
en Windows XP
Windows XP habilita por defecto el modo DMA en la mayoría de los dispositivos
ATA / ATAPI, pero para asegurar la estabilidad del sistema cuando encuentra
un número grande de errores (más de seis) durante la transferencia
de datos, seleccionará el modo PIO.
En este artículo explicaremos las razones por las cuales XP selecciona
este modo de acceso y si es posible cambiarlo.
El modo PIO es habilitado por defecto en las situaciones siguientes:
En dispositivos ATAPI, excepto DVD
y CD-RW
Windows XP habilita por defecto el modo PIO en CD-ROM y dispositivos removibles
como los magnetoópticos. Podemos habilitar el DMA a través del
administrador de dispositivos como describiremos al final del artículo.
Windows XP habilita por defecto el DMA en ATAPI DVD y CD-RW/CD-R.
En dispositivos ATA/ATAPI que no funcionan
correctamente en modo DMA
El test de compatibilidad de Microsoft ha demostrado que permitir el DMA
a ciertos dispositivos podría causar la corrupción de datos
o la inestabilidad del sistema. No hay manera de habilitar el DMA en estos
dispositivos.
En ciertos chipsets IDE que causan
la corrupción de los datos
Para ciertos dispositivos ATA o ATAPI que usan chipsets de los que se sabe
pueden ocasionar problemas durante la ejecución del DMA Windows XP
habilitará el modo PIO por defecto.
Los fabricantes de dichos dispositivos pueden corregir estos errores mediante
los métodos GTM y STM en las ACPI de la BIOS, por lo que haría
falta una actualización de la misma.
Mientras tanto podemos habilitar de nuevo el DMA a través del administrador
de dispositivos.
Por errores repetidos del DMA
Windows XP deshabilitará el modo DMA de un dispositivo si durante
el proceso de transferencia de datos encuentra un número significativo
de errores (mayor de 6) habilitando para el dispositivo en cuestión
el modo PIO.
En este caso no podremos habilitar de nuevo el modo DMA a través del
cambio de modo en el administrador de dispositivos, sólo será
posible desinstalando y volviendo a instalar el dispositivo.
Todos los errores se guardan en el registro del sistema.
Este tipo de errores puede ser causados por el montaje incorrecto del cableado
o por la utilización de cables de 40 contactos en lugar de 80.
También nos puede indicar el mal funcionamiento de nuestro hardware
como discos duros.
Habilitar DMA desde el administrador
de dispositivos
1. Abrimos el administrador de dispositivos
2. Doble click sobre "Controladoras IDE ATA/ATAPI para ver la lista
de canales y controladoras.
3. Sobre el canal del dispositivo en cuestión: Botón derecho
del ratón - Propiedades - Configuración avanzada.
4. Seleccionar en "Modo de transferencia" el modo DMA si está
disponible.
Modo PIO, recuperar el estado DMA en XP/Vista/7: Cuando los discos duros fallan
Y
es que a decir verdad desde que compré mi nueva PC tuve este problema
con un disco SATAII, que empezó a fallar, haciendo sonidos raros en el
hardware, indicación de que había algún error grave en la lectura de los
datos que además provocaba congelamientos parciales e incluso una caída
general del OS.
Lo más lógico es pensar que el cable de conexión de la fuente de poder
y/o el cable de transferencia pueden estar defectuoso o que el voltaje
es inferior a 11.5 voltios, por lo que habría que pensar en una fuente
nueva y probar cambiar los cables.
El mayor problema es que al reiniciar el sistema, el disco duro SATA se
ponía en Modo PIO, como saben esta modalidad no DMA es sumamente lenta y
consume hasta el 60% de los recursos de un procesador multinúcleo
El
Modo PIO se establece automáticamente después de 6
comprobación de redundancia cíclica (CRC) o de tiempo de espera, como
medida de seguridad, el
Modo PIO permite recuperar datos de un disco duro en caso de un daño progresivo inminente.
Si un dispositivo se pone lento después de algunos meses de uso, una
buena limpiada de los pines y cables sería necesaria antes de sacarlo
del modo PIO.
Tres métodos:
El primer método es al vuelo, no necesita de reiniciar, puede adaptarse a
Windows Vista pero tiene como límite que sólo se puede aplicar a discos
secundarios al que tiene instalado nuestro sistema operativo.
El segundo puede recuperar todos los estados DMA de todos los
dispositivos se aplica a Windows 7, Vista, XP, 2000 y NT. (Es el método
recomendado y más sencillo)
El tercero y más delicado es para editar desde el registro y tratar con un disco primario que contiene al sistema operativo.
1.-Recuperar DMA al Vuelo
Si es un dispositivo diferente al disco primario, esto es, distinto al
disco donde almacenamos el sistema operativo vayamos a Inicio ► Ejecutar
(En otros OS pulse Win+R) y escribimos
devmgmt.msc y pulsamos Aceptar, se abrirá el
Administrador de dispositivos, pulsamos en el signo + de
Controladoras IDE ATA/ATAPI.
Los
canales se ordenan en pares Maestro-esclavo o Primario y Secundario, mi
XP está en un disco Maestro y el DVD es su Esclavo, por lo que el
SATAII será el
Canal IDE secundario. Si damos doble clic y en la ventana que se abre de Propiedades, en la ficha
Configuración avanzada podremos ver en el
Modo de transferencia actual que el
Modo PIO está al mando:
Para restablecer el
DMA, tendremos que dar clic derecho en el
canal IDE que contenga el
Modo PIO y en el menú elijan
Desinstalar:
Tendremos que esperar unos momentos hasta que el dispositivos desaparezca de la lista de Mi PC y del árbol del
Administrador de Dispositivos.
Hecho esto, sólo tendremos que ir al Menú
Acción del Administrador de dispositivos y pulsar en
Buscar cambios de Hardware:
Esto cambiará el modo al vuelo de
PIO a DMA.
Anexo: Si el afectado es el disco que contiene el sistema Operativo.
Si el afectado es el disco principal, únicamente pongan en las
Propiedades del Canal IDE primario
en el
Modo de Transferencia, en modo
DMA si está disponible: (Sería recomendable desactivar el S.M.A.R.T. desde el BIOS para mayor efectividad en este particular caso)
2.-Recuperar todos los dispositivos ATA e ATAPI IDE (Windows XP, Vista y 7)
El método anterior es el mismo para Windows 7 y Vista, se ha probado con
éxito debido a que no se ha modificado esas llaves particulares del
registro en los nuevos OS de Microsoft.
Este método es el mejor y más sencillo de aplicar.
Para hacerlo tendremos que ejecutar un archivo VBS, primero descargue el archivo
resetear-dma-cgnauta-blog.zip. descomprima y ejecute el archivo
resetear-dma.vbs y reinicie su computadora.
Eso es todo.
3.- Recuperar el modo DMA en disco principal
Este es el método recomendado para recuperar los modos DMA desde el
editor de registro, pero antes que nada "debe notar que las claves de
registro tiene un número terminal por ejemplo
\0001 desde el que
se ordenan los canales principales (Maestro) y secundarios (Esclavo),
pero note que algunos contiene la dirección del controlador no del
dispositivo, los que se deben editar tienen en el valor
DriverDesc la palabra
Canal IDE primario o
Canal IDE secundario.
En este ejemplo se resetea los
dos primeros dispositivos de un canal controlador IDE/ATA si tiene
más dispositivos instalados el dispositivo Primario puede estar en 0002, recuerde verificar en el valor
DriverDesc que tenga el parametro
Canal IDE Primario:
- Haga clic en Inicio, en Ejecutar (Win + R en otros OS), escriba regedit y, a continuación, haga clic en Aceptar.
- Busque la siguiente clave del Registro y haga clic en ella:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0001
- En el menú Edición, seleccione Nuevo y haga clic en Valor DWORD.
- Escriba ResetErrorCountersOnSuccess y, a continuación, presione Entrar.
- En el menú Edición, haga clic en Modificar.
- Escriba 1 y, a continuación, haga clic en Aceptar.
Siga estos pasos y después salga del Editor del Registro:
- Haga clic en Inicio, en Ejecutar, escriba regedit y, a continuación, haga clic en Aceptar.
- Busque la siguiente clave del Registro y haga clic en ella:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0002
- En el menú Edición, seleccione Nuevo y haga clic en Valor DWORD.
- Escriba ResetErrorCountersOnSuccess y, a continuación, presione Entrar.
- En el menú Edición, haga clic en Modificar.
- Escriba 1 y, a continuación, haga clic en Aceptar.
El parámetro ResetErrorCountersOnSuccess reiniciará el contador de errores de manera automática
Fácil ¿no?.
Por qué hay problemas entre SATA e IDE
La fuente de poder recomendada para evitar estos problemas de
redundancia cíclica es de 400 watts en adelante, de otra forma, la falta
de corriente suficiente para mantener a ambos sistemas funcionando,
mismos que consumen por separado una cantidad de corriente considerable y
las caídas de tensión recurrentes pueden provocar la entrada en modo
PIO.
Mi recomendación es que no mezcle discos duros IDE con SATA.
Por lo general se hace evidente este problema cuando los discos duros
hacen unos sonidos como el picoteo de un pájaro y luego se escucha la
pérdida de velocidad del disco SATA y la entrada en modo PIO de los IDE.
Recuerde además limpiar los conectores cada seis meses con aire a
presión si su computadora está demasiado empolvada por dentro, pues esto
reducen la conductividad de los pines en los conectores.
Referencia: http://cgnauta.blogspot.mx/2008/11/modo-pio-recuperar-el-estado-dma-en-xp.html