Diferencia entre fragmentación interna y externa

Tabla de contenido:

Diferencia entre fragmentación interna y externa
Diferencia entre fragmentación interna y externa

Video: Diferencia entre fragmentación interna y externa

Video: Diferencia entre fragmentación interna y externa
Video: Punto de Equilibrio y Margen de Seguridad 2024, Mes de julio
Anonim

Fragmentación interna frente a externa

La diferencia entre fragmentación interna y externa es un tema de interés para muchos a quienes les gusta mejorar sus conocimientos informáticos. Antes de conocer esta diferencia, tenemos que ver qué es la fragmentación. La fragmentación es un fenómeno que ocurre en la memoria de la computadora, como la memoria de acceso aleatorio (RAM) o los discos duros, lo que provoca el desperdicio y el uso ineficiente del espacio libre. Si bien se obstaculiza el uso eficiente del espacio disponible, esto también provoca problemas de rendimiento. La fragmentación interna ocurre cuando la asignación de memoria se basa en particiones de tamaño fijo donde, después de que se asigna una aplicación de tamaño pequeño a una ranura, se desperdicia el espacio libre restante de esa ranura. La fragmentación externa ocurre cuando la memoria se asigna dinámicamente donde, después de cargar y descargar varias ranuras aquí y allá, el espacio libre se distribuye en lugar de ser contiguo.

¿Qué es la fragmentación interna?

Diferencia entre fragmentación interna y externa_Fragmentación interna
Diferencia entre fragmentación interna y externa_Fragmentación interna
Diferencia entre fragmentación interna y externa_Fragmentación interna
Diferencia entre fragmentación interna y externa_Fragmentación interna

Considere la figura anterior donde se sigue un mecanismo de asignación de memoria de tamaño fijo. Inicialmente, la memoria está vacía y el asignador ha dividido la memoria en particiones de tamaño fijo. Luego, más tarde, se cargaron tres programas llamados A, B, C en las primeras tres particiones, mientras que la cuarta partición aún está libre. El programa A coincide con el tamaño de la partición, por lo que no hay desperdicio en esa partición, pero el programa B y el programa C son más pequeños que el tamaño de la partición. Entonces, en la partición 2 y la partición 3 queda espacio libre. Sin embargo, este espacio libre no se puede usar ya que el asignador de memoria solo asigna particiones completas a los programas, pero no partes de ellos. Este desperdicio de espacio libre se llama fragmentación interna.

En el ejemplo anterior, se trata de particiones fijas de igual tamaño, pero esto puede suceder incluso en una situación en la que se encuentran disponibles particiones de varios tamaños fijos. Por lo general, la memoria o el espacio más duro se divide en bloques que suelen tener el tamaño de potencias de 2, como 2, 4, 8, 16 bytes. Entonces, un programa o un archivo de 3 bytes se asignará a un bloque de 4 bytes, pero un byte de ese bloque quedará inutilizable y causará una fragmentación interna.

¿Qué es la fragmentación externa?

Diferencia entre fragmentación interna y externa_Fragmentación externa
Diferencia entre fragmentación interna y externa_Fragmentación externa
Diferencia entre fragmentación interna y externa_Fragmentación externa
Diferencia entre fragmentación interna y externa_Fragmentación externa

Considere la figura anterior donde la asignación de memoria se realiza dinámicamente. En la asignación de memoria dinámica, el asignador asigna solo el tamaño exacto necesario para ese programa. La primera memoria es completamente gratis. Luego, los Programas A, B, C, D y E de diferentes tamaños se cargan uno tras otro y se colocan en memoria contiguamente en ese orden. Luego, más tarde, el Programa A y el Programa C se cierran y se descargan de la memoria. Ahora hay tres áreas de espacio libre en la memoria, pero no son adyacentes. Ahora se va a cargar un programa grande llamado Programa F, pero ninguno de los bloques de espacio libre es suficiente para el Programa F. La suma de todos los espacios libres definitivamente es suficiente para el Programa F, pero debido a la f alta de adyacencia, ese espacio es suficiente. inutilizable para el Programa F. Esto se llama fragmentación externa.

¿Cuál es la diferencia entre fragmentación interna y externa?

• La fragmentación interna ocurre cuando se utiliza una técnica de asignación de memoria de tamaño fijo. La fragmentación externa ocurre cuando se utiliza una técnica de asignación de memoria dinámica.

• La fragmentación interna ocurre cuando se asigna una partición de tamaño fijo a un programa/archivo con un tamaño menor que la partición, lo que hace que el resto del espacio en esa partición quede inutilizable. La fragmentación externa se debe a la f alta de suficiente espacio adyacente después de cargar y descargar programas o archivos durante algún tiempo porque todo el espacio libre se distribuye aquí y allá.

• La fragmentación externa se puede minar mediante la compactación donde los bloques asignados se mueven hacia un lado, de modo que se gana espacio contiguo. Sin embargo, esta operación lleva tiempo y también ciertas áreas críticas asignadas, por ejemplo, los servicios del sistema, no se pueden mover de forma segura. Podemos observar este paso de compactación realizado en los discos duros cuando se ejecuta el desfragmentador de disco en Windows.

• La fragmentación externa puede evitarse mediante mecanismos como la segmentación y la paginación. Aquí se proporciona un espacio de memoria virtual contiguo lógico mientras que en realidad los archivos/programas se dividen en partes y se colocan aquí y allá.

• La fragmentación interna puede ser mutilada teniendo particiones de varios tamaños y asignando un programa basado en el mejor ajuste. Sin embargo, aún no se elimina por completo la fragmentación interna.

Resumen:

Fragmentación interna frente a externa

Tanto la fragmentación interna como la fragmentación externa son fenómenos en los que se desperdicia la memoria. La fragmentación interna ocurre en la asignación de memoria de tamaño fijo, mientras que la fragmentación externa ocurre en la asignación de memoria dinámica. Cuando una partición asignada está ocupada por un programa que es menor que la partición, el espacio restante se desperdicia y causa fragmentación interna. Cuando no se puede encontrar suficiente espacio adyacente después de cargar y descargar programas, debido al hecho de que el espacio libre se distribuye aquí y allá, esto provoca una fragmentación externa. La fragmentación puede ocurrir en cualquier dispositivo de memoria, como RAM, disco duro y unidades flash.

Recomendado: