La desfragmentación es el proceso mediante el cual se acomodan
los archivos de un disco de tal manera que cada uno quede en un área
continua y sin espacios sin usar entre ellos. Al irse escribiendo y
borrando archivos continuamente en el disco duro, éstos tienden a no
quedar en áreas contiguas, así, un archivo puede quedar "partido" en
muchos pedazos a lo largo del disco, se dice entonces que el archivo
está "fragmentado". Al tener los archivos esparcidos por el disco, se
vuelve ineficiente el acceso a ellos.
El problema de almacenamiento no contiguo de archivos se denomina fragmentación, se produce debido al almacenamiento de archivos en dispositivos como disco duro y memoria RAM por el uso del computador.
La fragmentación es un problema que surge debido al ordenamiento interno de los datos en algunos sistema de archivos. Se da muy comúnmente en el sistema operativo Windows
aunque también afecta a otras plataformas pero en una escala mucho
menor. También se produce fragmentación dentro de la memoria del
computador (memoria RAM) cuando se asignan los procesos a los diferentes bloques de memoria. Existen dos tipos de fragmentación: doble y triple.
Desfragmentar no hace que el ordenador trabaje más rápido, sino que agiliza el proceso de la navegación por los archivos.
Motivación
La lectura y escritura secuenciales de sistemas de archivos
fuertemente fragmentados se ralentiza, debido a que aumenta el tiempo
necesario para que los cabezales del disco se muevan entre los
fragmentos y esperen a que el disco gire hasta la posición de lectura
(véase tiempo de búsqueda y retardo rotacional). Para muchas operaciones
comunes, el cuello de botella en la operación de todo el computador es
el disco duro; de ahí que el deseo de procesar más eficientemente anime a la desfragmentación. Los vendedores de sistemas operativos a menudo recomiendan la desfragmentación periódica para evitar que la velocidad de acceso al disco se degrade con el tiempo.
Los datos fragmentados también se extienden por el disco más de lo
necesario. Por lo tanto, uno puede desfragmentar para agrupar los datos
en una zona, antes de dividir una partición en dos o más (por ejemplo,
con GNU Parted o PartitionMagic).
La desfragmentación puede aumentar la propia vida del disco duro, al
minimizar el movimiento de los cabezales y simplificar las operaciones
de acceso a los datos.
Causas
La fragmentación ocurre cuando el sistema operativo no asigna
suficiente espacio contiguo para almacenar un archivo completo como una
unidad, sino que, en cambio, pone partes de él en huecos entre otros
archivos (usualmente estos huecos existen porque antes contuvieron un
archivo que posteriormente fue borrado por el sistema operativo, o
porque éste en primer lugar asignó demasiado espacio para un archivo).
Los archivos más grandes y el mayor número de archivos también
contribuyen a la fragmentación y en consecuencia a la pérdida de
rendimiento. La defragmentación intenta aliviar estos problemas.
Fragmentación
La fragmentación es la memoria que queda desperdiciada al usar los
métodos de gestión de memoria. Tanto el primer ajuste, como el mejor y
el peor producen fragmentación externa (Conocidos como estrategias de
Colocación).
La fragmentación es generada cuando durante el reemplazo de procesos
quedan huecos entre dos o más procesos de manera no contigua y cada
hueco no es capaz de soportar ningún proceso de la lista de espera. Tal
vez en conjunto si sea espacio suficiente, pero se requeriría de un
proceso de desfragmentación de memoria o compactación para lograrlo.
Esta fragmentación se denomina fragmentación externa.
Existe otro tipo de fragmentación conocida como fragmentación
interna, la cual es generada cuando se reserva más memoria de la que el
proceso va realmente a usar. Sin embargo a diferencia de la externa,
estos huecos no se pueden compactar para ser utilizados. Se debe de
esperar a la finalización del proceso para que se libere el bloque
completo de la memoria.
Fragmentación interna
La fragmentación interna es la pérdida de espacio en disco debido al
hecho de que el tamaño de un determinado archivo sea inferior al tamaño
del cluster,
ya que teóricamente el archivo estaría obligado a ser referenciado como
un cluster completo. Los cluster(s) son contiguos de forma que desde el
último bit del archivo situado en el cluster "a" hasta el primer bit
del archivo situado en el cluster contiguo (es decir "b") queda un
espacio sobrante siempre teniendo la condición de que el archivo del
cluster "a" fuera más pequeño que el cluster en sí.
Por eso se sugiere no disponer de un gran tamaño de partición en los
discos nuevos donde la capacidad es muy importante. Por ejemplo si
nuestro clúster es de 18KB (18.432 bytes) por más que un archivo ocupe
menos, en nuestro disco ocupara 18KB. Esto sugiere una pérdida de ese
espacio que dice utilizar pero no utiliza.
Por eso, en nuestro ejemplo, un archivo de 3KB ocupara en nuestro
disco lo mismo que uno de 10KB, o sea 18 KB. Esa pérdida de espacio se
denomina fragmentación interna, y no se corrige con el desfragmentador,
sino disminuyendo el tamaño del clúster, algo que habitualmente los
usuarios solo pueden conseguir creando particiones más pequeñas.
Fragmentación externa
Este tipo de fragmentación aparece como consecuencia de las distintas
políticas de ajuste de bloques que tiene un sistema de ficheros, o al
utilizar asignaciones dinámicas de bloques en el caso de la memoria. En
el sistema de ficheros, la sucesiva creación y eliminación de ficheros
de distintos tamaños puede conducir al aislamiento de los bloques libres
de un disco y, dependiendo de la política de ajuste, su no elección para futuros ficheros.
En la memoria del sistema la fragmentación se produce cuando los
procesos asignados han ocupado posiciones no contiguas de memoria
dejando demasiados bloques libres de pequeño tamaño, en los que no
"caben" nuevos procesos.
En sistemas de ficheros la desfragmentación trata de resolver este
problema, alineando los bloques de datos contiguos y juntando los
bloques libres, produciendo así fragmentos mayores que sí serán elegidos
para futuros ficheros. En la memoria principal se soluciona compactando
los procesos para que estos ocupen posiciones contiguas y dejar los
bloques libres juntos, o también se soluciona con la paginación de
memoria.
Desfragmentación
Este proceso consta de ordenar los trozos de información distribuida a
través de todo el disco, para mejorar la velocidad de acceso y
distribuir de mejor forma el espacio libre del dispositivo. Como este
proceso consta en la reorganización de partes de archivos, requiere de
suficiente memoria para realizar los movimientos de los trozos de
información. Al mover en forma física la información, la estructura
lógica no sufre alteraciones.
Aspectos de la desfragmentación
En Windows
la presencia de archivos inamovibles del sistema, o que el
desfragmentador no moverá para simplificar su tarea (sobre todo con el archivo de intercambio, o swap file), puede impedir un buen porcentaje de desfragmentación en el disco.
Ciertos sistemas de archivos son más susceptibles a cambios por desfragmentación que otros. Por ejemplo, una partición del tipo FAT se fragmenta más rápido que una de partición del tipo NTFS (Windows), EXT 4 (Linux) o HFS + (MacOSX).
Contramedidas comunes
- Particionado
Una estrategia común para optimizar la desfragmentación y reducir el
impacto de la fragmentación es particionar el/los disco(s) duro(s) para
separar las particiones del sistema de archivos que experimentan muchas
más lecturas y escrituras, de las zonas más volátiles, donde se crean y
borran frecuentemente los archivos. En Windows
de Microsoft, el contenido de directorios tales como "\Archivos de
programas" o "\Windows" se modifica con mucha menor frecuencia que la de
sus lecturas. Los directorios que contienen los perfiles de los
usuarios se modifican constantemente (especialmente el directorio Temp y
el cache del Explorador de Internet,
que crea miles de archivos que se borran en unos cuantos días). Si los
archivos de los perfiles de los usuarios se mantienen en una partición
dedicada (como se hace comúnmente en los sistemas UNIX),
el desfragmentador funciona mejor, pues no tiene que tratar con todos
los archivos estáticos de los otros directorios. En las particiones con
relativamente poca actividad, el rendimiento de la desfragmentación
mejora grandemente después de la primera de ellas, pues en el futuro el
defragmentador sólo tendrá que desfragmentar un pequeño número de nuevos
archivos.
Problemas
Archivos inamovibles
La presencia de archivos de sistema inamovibles, especialmente un
archivo de intercambio, puede dificultar la desfragmentación. Estos
archivos se pueden mover con seguridad cuando el sistema operativo no
está funcionando. Por ejemplo, ntfsresize mueve estos archivos para cambiar el tamaño de una partición NTFS.
Crecimiento de la fragmentación
En sistemas sin resistencia a la fragmentación, ésta crece por sí
misma si no se hace nada, así que es necesaria la desfragmentación
periódica para mantener el rendimiento del disco al máximo y evitar la
sobrecarga de defragmentaciones menos frecuentes.
Problemas de rendimiento y del usuario
Aproximación y desfragmentadores según el tipo de sistema
Los programas de desfragmentación, por lo general, vienen incorporados al sistema operativo (excepto en Windows NT 4).
También existen aplicaciones externas, las cuales poseen opciones más
avanzadas que las propuestas por los fabricantes del sistema operativo.
El desfragmentador más conocido es el Defrag, que es usado en MS-DOS y en las plataformas de Windows (en estas últimas con el nombre de "Desfragmentador de disco"). Puede ser encontrado en las versiones de Windows en Inicio -> Programas -> Accesorios -> Herramientas de Sistema.
No hay comentarios.:
Publicar un comentario