You are on page 1of 3

MEMORIA VIRTUAL

Memoria virtual: El termino memoria virtual se asocia a dos conceptos que normalmente aparecen unidos: El uso de almacenamiento secundario para ofrecer al conjunto de las aplicaciones la ilusin de tener ms memoria RAM de la que realmente hay en el sistema. Esta ilusin existe tanto a nivel del sistema, es decir, teniendo en ejecucin ms aplicaciones de las que realmente caben en la memoria principal, sin que por ello cada aplicacin individual pueda usar ms memoria de la que realmente hay o incluso de forma ms general, ofreciendo a cada aplicacin ms memoria de la que existe fsicamente en la maquina. Ofrecer a las aplicaciones la ilusin de que estn solas en el sistema, y que por lo tanto, pueden usar el espacio de direcciones completo. Esta tcnica facilita enormemente la generacin de cdigo, puesto que el compilador no tiene por qu preocuparse sobre dnde residir la aplicacin cuando se ejecute.

La memoria es uno de los principales recursos de la computadora, la cual debe de administrarse con mucho cuidado. Aunque actualmente la mayora de los sistemas de cmputo cuentan con una alta capacidad de memoria, de igual manera las aplicaciones actuales tienen tambin altos requerimientos de memoria, lo que sigue generando escasez de memoria en los sistemas multitarea y/o multiusuario. La parte del sistema operativo que administra la memoria se llama administrador de memoria y su labor consiste en llevar un registro de las partes de memoria que se estn utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando stos la necesiten y liberndola cuando terminen, as como administrar el intercambio entre la memoria principal y el disco en los casos en los que la memoria principal no le pueda dar capacidad a todos los procesos que tienen necesidad de ella. Estos sistemas de administracin de memoria se pueden clasificar en dos tipos: _los que desplazan los procesos de la memoria principal al disco y viceversa durante la ejecucin, y,_ los que no. La memoria virtual es una tcnica para proporcionar la simulacin de un espacio de memoria mucho mayor que la memoria fsica de una mquina. Esta "ilusin" permite que los programas se hagan sin tener en cuenta el tamao exacto de la memoria fsica. La ilusin de la memoria virtual est soportada por el mecanismo de traduccin de memoria, junto con una gran cantidad de almacenamiento rpido en disco duro. As en cualquier momento el espacio de direcciones virtual hace un seguimiento de tal forma que una pequea parte de l, est en memoria real y el resto almacenado en el disco, y puede ser referenciado fcilmente. Debido a que slo la parte de memoria virtual que est almacenada en la memoria principal, es accesible a la CPU, segn un programa va ejecutndose, la proximidad de referencias a memoria cambia, necesitando que algunas partes de la memoria virtual se traigan a la memoria principal desde el disco, mientras que otras ya ejecutadas, se pueden volver a depositar en el disco (archivos de paginacin). La memoria virtual ha llegado a ser un componente esencial de la mayora de los S.O actuales. Y como en un instante dado, en la memoria slo se tienen unos pocos fragmentos de un proceso dado, se pueden mantener ms procesos en la memoria. Es ms, se ahorra tiempo, porque los fragmentos que no se usan no se cargan ni se descargan de la memoria. Sin embargo, el S.O debe saber cmo gestionar este esquema.

La memoria virtual tambin simplifica la carga del programa para su ejecucin llamado reubicacin, este procedimiento permite que el mismo programa se ejecute en cualquier posicin de la memoria fsica. En un estado estable, prcticamente toda la memoria principal estar ocupada con fragmentos de procesos, por lo que el procesador y el S.O tendrn acceso directo a la mayor cantidad de procesos posibles, y cuando el S.O traiga a la memoria un fragmento, deber expulsar otro. Si expulsa un fragmento justo antes de ser usado, tendr que traer de nuevo el fragmento de manera casi inmediata. Demasiados intercambios de fragmentos conducen a lo que se conoce como hiperpaginacin: donde el procesador consume ms tiempo intercambiando fragmentos que ejecutando instrucciones de usuario. Para evitarlo el S.O intenta adivinar, en funcin de la historia reciente, qu fragmentos se usarn con menor probabilidad en un futuro prximo. Los argumentos anteriores se basan en el principio de cercana o principio de localidad que afirma que las referencias a los datos y el programa dentro de un proceso tienden a agruparse. Por lo tanto, es vlida la suposicin de que, durante cortos perodos de tiempo, se necesitarn slo unos pocos fragmentos de un proceso. Una manera de confirmar el principio de cercana es considerar el rendimiento de un proceso en un entorno de memoria virtual. El principio de cercana sugiere que los esquemas de memoria virtual pueden funcionar. Para que la memoria virtual sea prctica y efectiva, se necesitan dos ingredientes. Primero, tiene que existir un soporte de hardware y, en segundo lugar, el S.O debe incluir un software para gestionar el movimiento de pginas o segmentos entre memoria secundaria y memoria principal. Justo despus de obtener la direccin fsica y antes de consultar el dato en memoria principal se busca en memoria-cache, si esta entre los datos recientemente usados la bsqueda tendr xito, pero si falla, la memoria virtual consulta memoria principal , , en el peor de los casos se consulta de disco (swapping).

Memoria Virtual = Memoria Fsica + Area de Swapping en Disco Estrategias de Administracin del Almacenamiento Virtual Las diferentes organizaciones de almacenamiento virtual generalmente implementadas son Paginacin. Segmentacin. Segmentacin y paginacin. Las estrategias para la administracin de sistemas de almacenamiento virtual condicionan la conducta de los sistemas de almacenamiento virtual que operan segn esas estrategias. Se consideran las siguientes estrategias: Estrategias de bsqueda: Tratan de los casos en que una pgina o segmento deben ser trados del almacenamiento secundario al primario. Las estrategias de bsqueda por demanda esperan a que se haga referencia a una pgina o segmento por un proceso antes de traerlos al almacenamiento primario. Los esquemas de bsqueda anticipada intentan determinar por adelantado a qu pginas o segmentos har referencia un proceso para traerlos al almacenamiento primario antes de ser explcitamente referenciados. Estrategias de colocacin: Tratan del lugar del almacenamiento primario donde se colocar una nueva pgina o segmento.

Los sistemas toman las decisiones de colocacin de una forma trivial ya que una nueva pgina puede ser colocada dentro de cualquier marco de pgina disponible. Estrategias de reposicin: Tratan de la decisin de cul pgina o segmento desplazar para hacer sitio a una nueva pgina o segmento cuando el almacenamiento primario est completamente comprometido

Liberacin de Pgina Un proceso usuario puede emitir una liberacin voluntaria de pgina para liberar el marco de pgina cuando ya no necesitara esa pgina Se puede eliminar el desperdicio y acelerar la ejecucin. El inconveniente es que la incorporacin de mandatos de liberacin de pginas dentro de los programas de usuarios puede ser peligroso y retrasar el desarrollo de aplicaciones. Los compiladores y S. O. deberan detectar automticamente situaciones de liberacin de pgina mucho antes de lo que es posible con estrategias de conjuntos de trabajo. Tamao de Pgina Generalmente el almacenamiento real se divide en marcos o celdas de pgina de tamao fijo Los interrogantes tienen que ver con el tamao de las pginas, si todas las pginas tendrn igual tamao, si en caso de utilizar pginas de diferente tamao las pginas mayores deben ser o no mltiplos enteros de las menores, etc. Algunas consideraciones para determinar el tamao de pgina son las siguientes: Cuanto ms pequeo sea el tamao de una pgina, ms pginas y marcos de pginas habr y mayores sern las tablas de pginas: El desperdicio de almacenamiento debido al tamao excesivo de las tablas de pgina se llama fragmentacin de tablas. Esto indica la necesidad de pginas ms grandes. Con pginas grandes, grandes cantidades de informacin que nunca llegara a ser referenciada, se paginarn hacia el almacenamiento primario: Esto indica la necesidad de pginas ms pequeas. Debido a que las transferencias de e / s del disco (paginacin) consumen bastante tiempo, se debe minimizar la paginacin que un proceso requiera: Esto indica la necesidad de pginas grandes. Los programas tienden a mostrar la propiedad de localidad de referencia y esta localidad tiende a ser pequea: Esto indica la necesidad de pginas pequeas. Los procedimientos y datos rara vez comprenden un nmero entero de pginas, por lo que los sistemas de paginacin experimentan una fragmentacin interna: El desperdicio promedio es de 1 / 2 pgina no usada por segmento (grupo) de pginas, que estar en la ltima pgina del segmento. Esto indica la necesidad de pginas pequeas. Los tamaos de pagina mas utilizados son: 512 b, 1 kb, 2 kb, 4 kb.

You might also like