Características como objetivos deseables del sistema de gestión de memoria
- Ofrecer a cada proceso un espacio lógico propio.
- Proporcionar protección entre los procesos.
- Permitir que los procesos compartan memoria.
- Dar soporte a las distintas regiones del proceso.
- Maximizar el rendimiento del sistema.
- Proporcionar a los procesos mapas de memoria muy grandes.
Fases en la generación de un ejecutable
- Compilación
- Montaje o enlace
Bibliotecas dinámicas
- El archivo ejecutable puede ser bastante grande ya que incluye, además del código propio de la aplicación, todo el código de las funciones «externas» que usa el programa.
- Todo programa en el sistema que use una determinada función de biblioteca tendrá una copia del código de la misma, Como ejemplo, el código de la función printf, utilizada en casi todos los programas escritos en C, estará almacenado en todos los ejecutables que la usan.
- Cuando se estén ejecutando simultáneamente varias aplicaciones que usan una misma función de biblioteca, existirán en memoria múltiples copias del código de dicha función aumentando el gasto de memoria.
- La actualización de una biblioteca implica tener que volver a generar los ejecutables que la incluyen por muy pequeño que sea el cambio que se ha realizado sobre la misma. Supóngase que se ha detectado un error en el código de una biblioteca o que se ha programado una versión más rápida de una función de una biblioteca. Para poder beneficiarse de este cambio, los ejecutables que la usan deben volver a generarse a partir de los objetos correspondientes. Observe que esta operación no siempre puede realizarse ya que dichos objetos pueden no estar disponibles.
Operaciones sobre regiones
- Crear una región dentro del mapa de un proceso asociándola un objeto de sistema operativo crea una nueva región vinculada al objeto en el lugar correspondiente del mapa asignándola los recursos necesarios y estableciendo las características y propiedades de la misma (tipo de soporte, carácter privado o compartido, tipo de protección y tamaño fijo o variable).
- Eliminar una región del mapa de un proceso.
- Cambiar el tamaño de una región
- Duplicar una región del mapa de un proceso en el mapa de otro.
Política de asignación de espacio
Por lo general existen tres estrategias básicas:
- El mejor ajuste (best-fit).
- El peor ajuste (worst-fit).
- El primero que ajuste (first-fit)
Valoración del esquema contiguo
Una vez realizada esta presentación de los fundamentos de los esquemas de asignación contigua, se puede analizar hasta qué punto cumplen los requisitos planteados:
- Espacios lógicos independientes.
- Protección.
- Compartir memoria.
- Soporte de las regiones del proceso
- Maximizar el rendimiento
- Mapas de memoria grandes para los procesos.
No hay comentarios:
Publicar un comentario