
Una función poco conocida de Win XP
Prefetch acelera la carga del sistema y los programas
1 minuto de lectura'

Me consultaba Fernando Pampillo (fpampillo@sion.com) por una carpeta sospechosa que encontró en el directorio de sistema de su XP. Con el poco usual nombre de Prefetch y cargada con archivos asociados a programas, Fernando pensó en alguna clase de descarga no autorizada vía Internet. Luego de investigar un poco el disco encontró la carpeta llena de nombres de programas seguidos de valores alfanuméricos. Por si esto fuera poco, notaba que el indicador de tráfico de su firewall (ZoneAlarm) mostraba actividad más o menos en las fechas y horas de modificación de los dudosos archivos del directorio Prefetch.
Como le hubiera ocurrido a cualquiera de nosotros, se le encendió una señal de alarma.
Prelectura y velocidad
Por fortuna, en este caso, no hay razón para inquietarse. Prefetch significa precargar. En informática se usa para la acción de grabar en memoria páginas de código desde el disco antes de que sean requeridas por el usuario o el sistema.
Para eso, XP registra qué se lee del disco durante los primeros dos minutos desde del arranque, los 60 segundos después de que se han cargado todos los servicios, los 30 segundos después de iniciada la interfaz de usuario (lo que ocurra primero), así como durante los diez primeros segundos de la carga de una aplicación. A este proceso, Microsoft lo llama trazar y los resultados se escriben en el directorio Prefetch.
A la vez, cuando se inicia el sistema o se arranca un programa, Windows mira este directorio y, si el objeto que se va a leer figura allí, utiliza las funciones especiales del sistema de archivos NTFS para acelerar el proceso de carga. Esto es, reducir tiempo que transcurre desde el doble clic sobre un programa (por ejemplo, el Outlook Express o el Photoshop) y el instante en que el software está listo para usarse.
Dicho más simple, la función Prefetch reduce el trabajo de búsqueda de fragmentos de datos que deben realizar las cabezas del disco para leer un archivo, algo que -según Microsoft- es crítico para acelerar la carga (y por esto también es aconsejable mantener desfragmentado el rígido).
Con esto, precisamente, tiene que ver un objeto llamado layout.ini, también ubicado dentro del directorio Prefetch. Más o menos cada tres días, cuando la máquina está ociosa, XP escribe en ese archivo un registro de cuánto se usan los programas y bibliotecas. Luego, ejecuta el comando defrag con una opción para que la desfragmentación sea parcial y basada en layout.ini.
Suele leerse en la Web que para mejorar el rendimiento de XP conviene vaciar la carpeta Prefetch una vez al mes porque, se dice, el sistema guarda ahí todo lo que alguna vez ejecutamos y, luego de un tiempo, precarga demasiados datos.
La verdad es que XP va eliminando las entradas del directorio Prefetch que no se usan pasados diez días (según me informó Microsoft cuando le consulté sobre esto), así que no hace falta eliminar ninguno de los objetos allí listados, aunque tampoco es dañino, porque si se los borra Windows volverá a crearlos.
Sí es posible, al menos para diagnosticar problemas en el arranque de Windows, desactivar el Prefetcher. Para eso, hay que editar el Registro. En la clave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management\PrefetchParameters coloque el valor 0 en EnablePrefetcher. El valor 3 (default) hace que XP precargue el arranque y los programas; el 2, sólo el arranque; el 1, sólo las aplicaciones.






