administracion de memoria

Páginas: 8 (1767 palabras) Publicado: 24 de junio de 2014
Páginas compartidas
En un sistema de multiprogramación grande, es común que varios usuarios ejecuten el mismo programa a la vez. Es más eficiente compartir las páginas para evitar tener dos copias de la misma página en memoria al mismo tiempo. Un problema es que no todas las páginas se pueden compartir. En especial, sólo pueden compartirse las páginas que son de sólo lectura como el texto delprograma, pero las páginas de datos no.
Si se admiten espacios de Instrucciones (I) y de Datos (D) separados, es relativamente simple compartir los programas al hacer que dos o más procesos utilicen la misma tabla de páginas para su espacio I pero distintas tablas de páginas para sus espacios D. Por lo general en una implementación que soporta la compartición de esta forma, las tablas de páginasson estructuras de datos independientes de la tabla de procesos. Entonces, cada proceso tiene dos apuntadores en su tabla de procesos: uno para la tabla de páginas del espacio I y otro para la tabla de páginas del espacio D. Cuando el planificador selecciona un proceso para ejecutarlo, utiliza estos apuntadores para localizar las tablas de páginas apropiadas y establece la MMU para que los utilice.Aun sin espacios I y D separados, los procesos pueden compartir programas (o algunas veces bibliotecas) pero el mecanismo es más complicado.

Figura Dos procesos comparten el mismo programa compartiendo su tabla de páginas.
Cuando dos o más procesos comparten cierto código, ocurre un problema con las páginas compartidas. Supongamos que los procesos A y B están ejecutando el editor y compartensus páginas. Si el planificador decide eliminar A de la memoria, desalojando todas sus páginas y llenando los marcos de página vacíos con otro programa, causará que B genere un gran número de fallos de página para traerlas de vuelta.
De manera similar, cuando A termina, es esencial poder descubrir que las páginas aún están en uso, de manera que su espacio en el disco no se libere por accidente.Buscar en todas las tablas de páginas para ver si una página es compartida, frecuentemente es muy caro, por lo que se necesitan estructuras de datos especiales para llevar la cuenta de las páginas compartidas, en especial si la unidad de compartición es la página individual (o serie de páginas) en vez de toda una tabla de páginas completa.

Bibliotecas compartidas
La compartición se puederealizar en otros elementos además de las páginas individuales. Si un programa se inicia dos veces, la mayor parte de los sistemas operativos compartirán de manera automática todas las páginas de texto, quedando sólo una copia en la memoria. Las páginas de texto siempre son de sólo lectura, por lo que aquí no hay problema. Dependiendo del sistema operativo, cada proceso puede obtener su propia copiaprivada de las páginas de datos o se pueden compartir y marcar como de sólo lectura. Si cualquier proceso modifica una página de datos, se realizará una copia privada para éste, esto es, se aplicará la copia en escritura.
En los sistemas modernos hay muchas bibliotecas extensas utilizadas por muchos procesos, por ejemplo, la biblioteca que maneja el diálogo para explorar por archivos que se deseanabrir y varias bibliotecas de gráficos. Si se enlazaran en forma estática estas bibliotecas con cada programa ejecutable en el disco se agrandarían aún más. En vez de ello, una técnica común es utilizar bibliotecas compartidas (que se conocen como DLLs o Bibliotecas de enlaces dinámicos en Windows).
Cuando un programa se vincula con bibliotecas compartidas (que son ligeramente diferentes a lasestáticas), en vez de incluir la función a la que se llamó, el vinculador incluye una pequeña rutina auxiliar que se enlaza a la función llamada en tiempo de ejecución. Dependiendo del sistema y los detalles de configuración, las bibliotecas compartidas se cargan cuando se carga el programa o cuando las funciones en ellas se llaman por primera vez. Desde luego que si otro programa ya ha cargado...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • ADMINISTRACION MEMORIA
  • Administracion de memoria
  • Administracion De Memoria
  • ADMINISTRACION DE MEMORIA
  • administracion de memoria
  • Administracion De Memoria
  • Administracion de memoria
  • administracion de memoria

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS