Articulo JkDefrag

JkDefrag 3.26 - Nuevos e innovadores métodos para el desfragmentado de las particiones en los discos duros

En el mundo del desfragmentado de Windows no ha habido movimientos significativos estos años respecto al uso de programas para esa labor tan importante como es tener un sistema estable y rápido. Para saber por qué existe el problema de la fragmentación en el entorno windows (mínimo en otros S.O.), disponéis en la red de un buen artículo:

Microsoft

Microsoft nos ofrece una solución al problema, con un programa que no hace bien su trabajo, que es lento, pesado en el uso de memoria y con pocas funcionalidades; no nos ofrece ninguna información de lo que hace, ni de cómo lo hace, ni opciones adicionales.

Tampoco ha aportado ninguna mejora al problema que provoca el fragmentado en el comportamiento del sistema desde hace mucho tiempo, exceptuando cuando con Windows XP, sacó una característica de "Optimización" del arranque del S.O, llamado "Prefetching" (más información en inglés: Enhanced Write Filter (EWF)), que es una especie de "Búsqueda anticipada" de los programas que el sistema detecta que son más usados, cargando en memoria algunos archivos y dlls de dichos programas al inicio del sistema.

Esto funciona relativamente bien al principio cuando el sistema tiene pocos programas, pero va perdiendo su funcionalidad cuando la carpeta "C:\Windows\Prefetch", se va llenando de archivos y aumentando el tamaño del registro -en la misma carpeta guarda de ello el archivo "layout.ini"-. Con el uso que la mayoría de usuarios hacemos del PC, utilizando muchos programas, instalando y desinstalando, termina cargando en memoria demasiados procesos y servicios, incluso archivos de programas que ya no tenemos instalados, volviendo nuestro sistema más lento, justo lo contrario que quería hacer…

Para mejorar esto se pueden eliminar sin problema los archivos contenidos en la carpeta Prefetch, mas es probable que al principio los programas que utilizamos a menudo tarden más en arrancar, pero con su uso el sistema operativo creará de nuevo el contenido de esa carpeta (no es necesario borrar todos los archivos, sería más interesante eliminar aquellos a los que hace mucho tiempo que no accedemos). Incluso es mejor utilizar alguna herramienta que lo haga por nosotros, p.ej. CCleaner -si no encuentra esa carpeta o sus archivos comprueba que no esté marcada la casilla “Ocultar los archivos protegidos por el SO” en la ruta (Herramientas/Opciones de Carpeta/Ver). Si prefiere desactivar esta característica puede hacerlo siguiendo las indicaciones de la propia Microsoft.

Desfragmentadores comerciales

Tema aparte son los desfragmentadores comerciales que prometen hacerlo más rápido, y dicen optimizar el disco, sin decirle al usuario cómo lo hacen..., al final todo queda en que "note" más rápido su sistema después de desfragmentar, algo que debería ser obvio. Algunos de ellos como Diskeeper de Executive Software, PerfectDisk de Raxco Software y Speed Disk de Symantec Corp, lo más que hacen es desfragmentar más rápido que el de Windows y optimizar el disco colocando lo archivos más usados en diferentes partes del disco:

  • Speed Disk y PerfectDisk los colocan cerca del lugar de reposo del cabezal de lectura,
  • Raxco los coloca al medio del disco donde la distancia media de desplazamiento se minimiza.

API: Windows Kernel Desfragmentation

Hay que aclarar que “Todos” los programas desfragmentadores, comerciales o no, incluidos los de la propia Microsoft, siguen las recomendaciones de Microsoft al usar las Windows Kernel Defragmentation API, estándar creado por ellos para tal fin, exceptuando Symantec que emplea “device drivers” especiales, pero eso es un riesgo, porque el código de Windows y su API es código cerrado y no se puede “ver” para personalizarse, mejorar ni corregir sus debilidades y carencias, o para optimizar estos programas con Windows; a menos que lo hagan ellos y no lo han hecho desde hace muchos años.

  • Son limitaciones conocidas de la API, p.ej. el hecho de que en FAT 32 los desfragmentadores no pueden mover los directorios, en Windows 2000 no funciona el desfragmentado en discos que se han formateado con un tamaño de cluster más grande que 4KB, etc…

JkDefrag

Jeroen Kessels, con JkDefrag, un programa gratuito liberado bajo la licencia GNU GPL, y con las fuentes del programa a disposición de todos, ha traído al mundo del desfragmentado de discos, nuevos métodos que no se habían visto en ningún otro programa de desfragmentación de los que había probado; son tantas las opciones que tiene el programa que aconsejo echarle un vistazo a la ayuda en Inglés o en Español o al foro en Inglés, para comprender todo su potencial.

Con JkDefrag puede desfragmentar su disco, tan seguro como con cualquiera de los desfragmentadores comerciales antes mencionados, pero mucho más rápido, sin casi consumo de memoria y sin penalizar al sistema, tal es su ligereza.

Funcionamiento de JkDefrag

JkDefrag trabaja en 3 fases

Fase 1: Analizar - JkDefrag tiene que escanear todos los archivos del disco para determinar si están fragmentados y donde están.

Fase 2: Reparar - JkDefrag pasa por todos los archivos en el disco y realiza las siguientes tareas:

  • Todos los fragmentos de archivos son desfragmentados, simplemente moviéndolos al primer hueco que sea lo suficientemente grande en el disco. Si no hay hueco lo suficientemente grande entonces el desfragmentador reducirá el número y tamaño de los fragmentos del archivo tanto como sea posible para rellenar los huecos más grandes disponibles.
  • Windows reserva un porcentaje del disco para el MFT (Tabla Maestra de Archivo), pero se pueden colocar archivos normales allí si el resto del disco está lleno. Los archivos se quedarán allí, aún cuando haya suficiente espacio otra vez. JkDefrag mirará los archivos en el espacio reservado MFT y los moverá al espacio de disco normal, dejando libre otra vez el espacio reservado MFT.
  • Los archivos normales son movidos fuera de la zona de directorios, y el Spacehogs (Espacio sucio) será movido fuera de la zona de directorios y de la zona de archivos normales. Esto prepara el disco para el siguiente paso (la optimización) así se puede hacer un mejor trabajo.

Fase 3: Optimizar

  • En la mayoría de discos el principio del disco es considerablemente más rápido que el final, algunas veces tanto como el ¡200 %!. Puedes comprobar la velocidad de tu disco, antes y después con "HD Tune" un pequeño programa gratuito para medir su disco. El método de optimización por defecto de JkDefrag mueve todos los archivos al principio del volumen. Esto está orientado para un uso diario y simplemente rellenará los huecos con los archivos superiores, rapidísimo y de muy poco movimiento de datos.
  • Clasificar los archivos en su disco le puede dar aun más velocidad. Hay varios métodos de clasificación para que escoger. Estos métodos son todos muy lentos y pensados sólo para un uso ocasional.

JkDefrag clasifica los archivos en 3 zonas: Directorios (zona 1), archivos normales (zona 2), y Spacehogs (Espacio sucio) (zona 3). Los archivos que estén fuera de su zona son movidos a su zona.

Los directorios son quizá la zona de datos más accedida en el disco, por eso la zona 1 es colocada al principio del disco.

Después de los directorios viene una zona libre (vea debajo), luego la zona 2 con los archivos normales, otra zona libre,

y luego otra zona 3 con el Spacehogs (Espacio sucio): con los archivos que son mayores de 50 MB; Archivos no accedidos en el último mes; Archivos con ciertos nombres de archivo, como archivos comprimidos; Archivos en la Papelera de reciclaje; Los archivos de Service pack (actualizaciones de Windows), y otros datos no accedidos frecuentemente.

El principio y el final de las zonas es determinado automáticamente.

  • Una computadora en ejecución creará y borrará archivos temporales todo el tiempo. Si el disco estuviera completamente optimizado el único lugar para los archivos temporales nuevos sería detrás de todos los demás datos. Lo cuál es más bien lento. Así es que JkDefrag mantiene un espacio libre del 1 % del total de espacio del disco, (configurable en las opciones) entre la zona 1 (directorios) y la zona 2 (archivos normales), y entre la zona 2 y la zona 3 (Spacehogs - Espacio sucio).

Otras Opciones

Además de lo anterior, implementa multitud de opciones que, según el uso que haga de su PC, pueden ser muy útiles:

  • 1 = Sólo analiza, no repara, ni optimiza. (sirve para ver cómo de fragmentado está el disco)
  • 2 = Analiza y repara, pero no optimiza. (una desfragmentación normalita como el programa que viene con Windows)
  • 3 = Analiza, repara, y hace una optimización rápida (por defecto). (desfragmenta y optimiza, juntando todos los archivos entre los huecos más cercanos y liberando espacio, la más aconsejable para un uso diario y, en especial, para la partición que contiene el S.O.)
  • 4 = (esta opción se quitó en la versión 3.8)
  • 5 = Analiza y fuerza el agrupado. (desplaza todos los archivos que se pueden mover al principio del disco, aunque para ello tenga que fragmentarlos para rellenar los huecos; esto sirve para ajustar la partición del disco)
  • 6 = Analiza y mueve al final del disco. (de esta forma puede colocar al final del disco/partición todos esos archivos grandes y que utiliza poco como, videos, archivos comprimidos, descargas de Internet, copia de seguridad, archivos de instalación, etc…, dejando el principio del disco -que es más rápido- libre para otros menesteres; esto es ideal para esos discos/particiones que utilizamos sólo para guardar datos)

La idea de clasificar los archivos puede chocar con la idea de desfragmentación pero, después de todo, desfragmentar debería servir para organizar nuestro disco de la mejor manera para nosotros y el funcionamiento que le damos a nuestro PC, aportando un punto de vista diferente y muy válido en la desfragmentación. La optimización por clasificación moverá todos los datos al principio del disco. Pero puede haber algunos archivos inamovibles que estorban (como los del sistema o los que están en uso). En lugar de dejar huecos (si un archivo no cabe entre el último archivo y el archivo inamovible), el programa puede "rodear" los archivos inamovibles dividiendo los archivos normales en fragmentos. Esto puede parecer extraño para un desfragmentador, pero los fragmentos están alineados y por consiguiente tienen un impacto muy pequeño en el funcionamiento. Los huecos sin embargo retardarían todos los archivos por encima de ellos, puesto que los discos son considerablemente más rápidos al principio que al final. ¡Los fragmentos se ven horribles en la pantalla y en las estadísticas, pero están allí para hacer su disco más rápido!

  • 7 = Analiza y clasifica los archivos por nombre (carpeta + nombre de archivo). (muy bueno para un inicio rápido de programas. Los archivos usados por un programa en particular estarán muy cerca y juntos en el disco)
  • 8 = Analiza y clasifica los archivos por tamaño (primero los más pequeños). (situando todos los archivos pequeños al principio del disco se reducirá drásticamente el tiempo medio de búsqueda del archivo)
  • 9 = Analiza y clasifica los archivos por último acceso (primero los más nuevos). (los archivos que no han sido accedidos desde hace tiempo son probablemente poco importantes y es más conveniente clasificarlos el la parte posterior del disco, que es más lenta)
  • 10 = Analiza y clasifica los archivos por último cambio (primero los más viejos). (coloca juntos los archivos que cambian mucho - p.ej. bases de datos y archivos de registro-, acelera el funcionamiento normal del sistema -porque así la mayor parte de las veces se reescribirán los datos en los mismos cluster, evitando la fragmentación-)
  • 11 = Analiza y clasifica los archivos por fecha de creación (primero los más viejos). (los archivos más viejos en el disco tienen más probabilidad de ser archivos importantes del sistema, p.ej., usados en el arranque de Windows, así estarán mas cerca del principio del disco)

Sugerencias antes de la 1ª desfragmentación

Unas cuantas sugerencias antes de desfragmentar su disco, por lo menos cuando esté muy fragmentado, p.ej., la 1ª vez, después, si ejecuta JkDefrag una vez al día con la opción por defecto, le hará menos falta:

  • Vacíe el disco de todos los archivos inútiles, para ello se puede servir del programa CCleaner referenciado antes.
  • Reinicie antes de ejecutar JkDefrag. Esto liberará los archivos que están en uso, y así podrán ser desfragmentados.
  • Detenga el escáner en tiempo real (monitorización) de su antivirus antes de ejecutar JkDefrag. Los escáneres de los antivirus comprueban toda la actividad del disco duro, esto suele hacer la desfragmentación y optimización del disco más lenta (esto mejor desconectado de Internet). maty: con el antivirus NOD32 ni se entera, dada su rapidez de análisis.
  • Mueva el Archivo de paginación pagefile.sys (Memoria Virtual) a otra partición o volumen, reinicie, desfragmente, y vuelva a poner como estaba el Archivo de paginación. Si no tiene una segunda partición o volumen entonces puede reducir temporalmente de tamaño el Archivo de paginación, p.ej., a 100Mb.
  • Si un programa (p.ej., una base de datos) impide desfragmentar ciertos archivos por estar en uso, detenga el programa, ejecute JkDefrag sólo para el directorio de datos en particular, y vuelva a arrancar el programa.
  • Comprima los archivos sin uso con un compresor como 7Zip. El archivo comprimido ocupará menos espacio del disco, y también se podrá desfragmentar/optimizar mucho más rápidamente que los archivos individuales.
  • La primera partición en un disco es significativamente más rápida que otras particiones (ahí suele instalarse el S.O. de windows). Intente usar otras particiones sólo para los datos del área "SpaceHog"(básicamente este espacio se reserva para todos esos archivos que el sistema o nosotros no utilizamos a menudo); lea el apartado de la ayuda "¿Qué es SpaceHogs (Espacio sucio)?", así como una lista de los archivos incluidos por defecto, que se pueden ampliar a través de las opciones.

JkDefrag está diseñado y pensado para servidores que están continuamente en funcionamiento, actualmente también los usuarios de PC tenemos nuestras máquinas continuamente encendidas, por lo tanto es muy valioso para nosotros. JkDefrag puede parecer “básico y feo” en su diseño visual, pero es muy potente en sus opciones desde línea de comandos, en este caso se puede decir que “la belleza va por dentro” ;-).

Puede utilizar JkDefrag 3.26 en Inglés descargándolo de su web, o traducido desde las fuentes en Español descargándolo desde la web de Senpai.

Si realmente le parece difícil su uso mediante la línea de comandos y el Administrador de tareas o mediante accesos directos como se indica en la ayuda, puede utilizar alguna de sus GUI (interfaces gráficos) que enlaza en su web; particularmente puedo aconsejar JkDefragGUI de Emiel Wieldraaijer, también traducida por mí, que junto a las indicaciones que hay en mi web y descargando JkDefrag en Español, podrá tener tanto el programa como los registros de uso en Español.

- Un saludo de Senpai -

Enlaces relacionados y Bibliografía

  1. http://www.kessels.com/JkDefrag/index.html
  2. http://www.google.es
  3. http://www.bradanovic.cl/pcasual/desfragmentar.html
  4. http://www.lambdasi.com.ar/textocomp.asp?id=482
  5. http://msdn.microsoft.com/library/.../xetskDisablingPrefetch.asp
  6. http://msdn2.microsoft.com/en-us/library/aa939465.aspx