Que implicaciones positivas o negativas tiene un sistema de ficheros con fragmentación interna y fragmentación externa

El primer sistema de direccionamiento que se usó fue el CHS (cilindro-cabeza-sector), ya que con estos tres valores se puede situar un dato cualquiera del disco. Más adelante se creó otro sistema más sencillo: LBA (direccionamiento lógico de bloques), que consiste en dividir el disco entero en sectores y asignar a cada uno un único número. Este es el que actualmente se usa y sobre todo con la aparición de los SSD y su fragmentación

 

cilindro cabeza sector

Un aspecto muy importante es la elección del tamaño del bloque, para esto hay que entender que si el tamaño del bloque es muy grande, aun cuando el archivo sea de un tamaño muy pequeño, se le asignará el bloque entero con lo que se desperdiciará gran parte de la capacidad del disco (fragmentación interna).

 

Por otra parte, si el tamaño del bloque es demasiado pequeño para almacenar un archivo, harán falta muchos bloques con lo que se producirá un retraso en la lectura del archivo al tener que localizar en el disco todos los bloques que componen dicho archivo (fragmentación externa). Una vez más, se ha de llegar a una solución de compromiso, eligiendo un tamaño del bloque lo suficientemente pequeño para no desperdiciar capacidad del disco pero lo suficientemente grande como para no ralentizar en exceso la lectura de los archivos. Diversos estudios realizados indican que el tamaño medio de los archivos en sistemas Linux y Windows es de 1 KB, así pues, son adecuados tamaños de bloques de 512 Bytes, 1 KB ó 2 KB.

 

Si se elige un tamaño de bloque de, por ejemplo, 2 KB en un disco cuyo sector tiene 512 Bytes, cada bloque estará compuesto por cuatro sectores.

 

En la actualidad, los sistemas Windows utilizan tamaños para los bloques de 4 KB.

 

Fragmentación interna:

 

fragmentacion 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 de los clusters.

 

 

Fragmentación externa:

Fragmentacion 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.

 

Como resolver el problema de la fragmentación:

desfragmentacion

 

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.

Leer más: http://asirclaret-com.webnode.es/news/fragmentacion-interna-y-externa/

Deja un comentario.

Tu dirección de correo no será publicada.


*