Download Administración de memoria del sistema operativo Solaris...
Description
Administración de memoria del sistema operativo Solaris El esquema de administración de memoria de Solaris. Solaris 10 es un sistema operativo de memoria virtual. Las ventajas de un manejo virtual de la memoria son: • • •
Presenta un modelo simple de manipulación de la memoria a los programadores de aplicaciones, quienes no requieren conocer como está organizada la memoria física Permite que los procesos “vean” rangos lineales de bytes en sus espacios de direcciones, independientemente de la fragmentación física que pueda tener la memoria real Proporciona un modelo de programación de aplicaciones con un tamaño de memoria disponible muchas veces mayor a la memoria existente, al habilitar el uso de almacenamiento secundario como contenedor de secciones de memoria que no caben en la memoria físicamente disponible
En este esquema de manejo de memoria, la memoria física (RAM) es dividida en pedazos de tamaño fijo llamadas páginas. El tamaño de una página puede variar dependiendo de la plataforma, por ejemplo, el tamaño de página típico de un sistema UltraSPARC es de 8 KB. Cada página está asociada con un archivo y un offset dentro del mismo; ambos datos identifican el “backing store” de la página. Se conoce como “backing store” a la ubicación en almacenamiento secundario a la cual el contenido de la página debe ser migrado cuando la memoria física requiera ser tomada para otro uso; análogamente, indica la ubicación de la cual debe ser leído su contenido cuando se requiera que esté nuevamente en memoria. El mecanismo que ejecuta ambas acciones es conocido como paginación. Para acceder a la memoria física, Solaris implementa mecanismos de traslación de la memoria virtual a la memoria física. La figura 1 muestra la estructura de estos mecanismos
Espacio de direcciones virtual de un proceso El concepto de paginación se complementa con el de swapping. El swapping permite definir un espacio de direcciones virtual más grande que el espacio de direcciones físico. Cuando la demanda de memoria supera la cantidad de memoria física, las páginas de memoria menos recientemente usadas del proceso con mayor tiempo de inactividad son “sacadas” al llamado espacio de swap, que es un área de disco definida para tal fin. De esta manera se libera memoria para otros procesos. Se conoce como espacio de direcciones virtual de un proceso al rango de direcciones de memoria que son “presentadas” al proceso como su ambiente. Este espacio de direcciones virtual tiene las siguientes partes , que se ilustran en la figura 2 • •
• •
Texto ejecutable. Contiene el conjunto de instrucciones ejecutables del archivo binario asociado al proceso. Es mapeado del mencionado archivo binario como sólo lectura, con permisología de ejecución. Data ejecutable. Contiene las variables inicializadas en el proceso ejecutable, es mapeado como lectura/escritura/privado. El mapeo privado significa que los cambios hechos en esta parte de la memoria no se reflejen en el espacio de direcciones de otros procesos mapeados del mismo ejecutable. Espacio de heap. Espacio de memoria asignado por el system call malloc(). Es utilizado para las estructuras de datos dinámicas del proceso; a medida que estas crecen, el heap también lo hace. Stack. Espacio de memoria mapeado como lectura/escritura. El mismo contiene valores de argumentos de funciones y variables locales. Como el heap, va creciendo contra demanda.
Thank you for interesting in our services. We are a non-profit group that run this website to share documents. We need your help to maintenance this website.