Segmentación de memoria: características, fragmentación y reubicación

InformáticaActualizado el 3,29 KB

Resumen

El documento explica la gestión de memoria principal en un computador: su papel, la fragmentación interna y externa, los tipos de reubicación (estática y dinámica), la protección y la compartición de memoria. Al final describe el método de asignación por segmentación, sus ventajas y la función del gestor de memoria (MMU).

Puntos clave

  • La memoria principal (RAM) debe contener los programas para que puedan ejecutarse y se organiza como una tabla de localidades de un byte, cada una con su dirección.
  • La fragmentación es el desaprovechamiento de memoria: interna en particiones de tamaño fijo y externa en particiones de tamaño variable.
  • La reubicación estática se realiza durante la carga y el programa no puede moverse después; la dinámica se realiza durante la ejecución.
  • El SO debe proteger la memoria del SO y de otros procesos, y el gestor de memoria controla la compartición de zonas comunes.
  • En la segmentación, un programa es una colección de segmentos de tamaño variable que son unidades lógicas como funciones u objetos.
  • La segmentación permite almacenar bloques de un proceso en áreas no contiguas, ofrece reubicación dinámica y aporta protección y uso compartido.

Ponte a prueba

Memoria
• Es uno de los recursos más importantes de un computador
• Para que los programas puedan ser ejecutados es necesario que estén cargados en memoria principal, conocida como RAM (Random Access Memory)
• La memoria es una amplia tabla de datos, cada casillero tiene su propia dirección
• Tanto el tamaño de la tabla, como el de los datos incluidos en ella dependen de cada arquitectura concreta
• La información que es necesario almacenar de modo permanente se guarda en dispositivos de almacenamiento secundarios también conocidos como memoria secundaria
• El módulo del SO encargado de la administración de memoria se llama Gestor de memoria en inglés Memory Management Unit (MMU).
• El Gestor de memoria trabaja junto con el hardware por lo que se dice que tiene parte sw y parte hw.
• La memoria principal puede ser considerada como un arreglo lineal de casiileros de almacenamiento de un byte de tamaño.
• Cada localidad de almacenamiento tiene asignada una dirección que la identifica.

Fragmentación
• Es el desaprovechamiento de memoria, producido por espacios que van quedando sin utilizarse.
• Fragmentación interna: se produce cuando la memoria se divide en particiones de tamaño fijo y quedan espacios sin utilizarse.
• Fragmentación externa: se produce cuando la memoria se divide en particiones de tamaño variable. Corresponde al desaprovechamiento de espacio entre particiones.

Reubicación
• Cada vez que se carga un programa en memoria puede ubicarse en distintas zonas de esta.
• Reubicación estática: se lleva a cabo durante la carga del programa. Todas las direcciones generadas son relativas a la dirección de inicio del programa. El programa una vez cargado no puede ser reubicado.
• Reubicación dinámica: se lleva a cabo durante la ejecución del programa. Las direcciones se generan dinámicamente a medida que se van referenciando. Un programa puede ser cambiado de zona de memoria mientras se está ejecutando.

Protección
• El SO debe evitar que el proceso albergado en memoria acceda a las direcciones de memoria pertenecientes al SO y a las zonas de memoria de otros procesos.

Compartición
• En los sistemas con multiprogramación, se da que algunos procesos necesitan compartir datos.
• Se realiza a través de zonas de memoria comunes.
• El gestor de memoria debe encargarse de controlar el uso adecuado de estas zonas.

Métodos de asignación de memoria: Segmentación

• Un programa es una colección de segmentos de tamaño variable
• Un segmento es una unidad lógica como: programa principal, procedimiento, función, método, objeto, etc.
• Ventajas:
- Permite que los bloques de un proceso puedan estar almacenados en áreas no contiguas
- Suministra reubicación dinámica
- Aporta protección y uso compartido

Descargar

PDF Word HTML

Preguntas frecuentes

¿Qué es la fragmentación interna y externa?

La fragmentación interna se produce cuando la memoria se divide en particiones de tamaño fijo y quedan espacios sin usar dentro de ellas. La fragmentación externa aparece en particiones de tamaño variable, como desaprovechamiento de espacio entre particiones.

¿Cuál es la diferencia entre reubicación estática y dinámica?

La reubicación estática se lleva a cabo durante la carga del programa y, una vez cargado, no puede reubicarse. La reubicación dinámica se hace durante la ejecución, por lo que el programa puede cambiar de zona de memoria mientras se ejecuta.

¿Qué es un segmento en la segmentación de memoria?

Un segmento es una unidad lógica del programa, como el programa principal, un procedimiento, una función, un método o un objeto. Un programa es una colección de segmentos de tamaño variable.

Ponte a prueba

Tarjetas de repaso

Pulsa una tarjeta para ver la respuesta.

Test

1. ¿Cómo se denomina la memoria principal de un computador según el texto?
2. ¿Qué ocurre con la fragmentación interna?
3. ¿Cuándo se lleva a cabo la reubicación estática?
4. ¿Qué debe evitar el SO según el apartado de protección?
5. ¿Qué ventaja aporta la segmentación?
6. ¿Cómo se denomina el módulo del SO encargado de administrar la memoria?

Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.