Memoria Virtual: Optimización y Gestión de Recursos en Sistemas Operativos
Clasificado en Informática
Escrito el en
español con un tamaño de 3,1 KB
La Memoria Central: Limitaciones y Soluciones Iniciales
El ordenador cuenta con una memoria central que es limitada e insuficiente. Al principio, para solucionar este problema, se adoptaron técnicas tales como dividir el programa en partes denominadas capas. Cada una de las capas se iba ejecutando según fuera necesario. Cuando fuera necesario utilizar otra parte del programa que no estuviera en memoria central o principal, se accedía de nuevo al disco duro para cargar la siguiente capa en memoria central.
Esta labor de dividir el programa en capas podía realizarla el mismo programador, dividiendo el programa en módulos. Con el perfeccionamiento de los Sistemas Operativos (SO), se ha llegado a la ubicación de las capas del programa en memoria de forma transparente para el usuario.
Memoria Virtual: Concepto y Funcionamiento
Este método se conoce con el nombre de memoria virtual. Al diseñarla, se consideró la posibilidad de que el programa que se fuera a ubicar en memoria podría ser excesivamente grande para el tamaño de esta. De este modo, permanecería en memoria la parte del programa que se estuviera ejecutando, mientras el resto estaría en el disco.
Los SO consideran el espacio en disco libre como si se tratase de memoria RAM. Así, para el usuario, el programa estará realmente cargado en RAM, aunque solamente se cargará en RAM la parte del programa que en realidad se está ejecutando en ese instante. Entretanto, el resto del programa en ejecución permanece temporalmente almacenado en disco para su posterior utilización si fuera necesario.
Si en un momento concreto se necesita ejecutar una parte del programa que está almacenada en memoria virtual, esta pasará a RAM para su ejecución real, y la parte del programa que estaba en RAM pasará al disco.
Gestión de la Memoria y el Papel de los Controladores
Los administradores o controladores de memoria se encargan de gestionar y organizar el paso de información entre el disco duro y la RAM, y entre esta y la memoria caché, hasta que finalmente los datos los gestiona la CPU.
Memoria Virtual en Entornos Multitarea
En multitarea, puede utilizarse la técnica de memoria virtual de tal forma que de una memoria de 32 MB pueda asignarse 1 MB a cada programa. Cada programa es alojado en su parte de la memoria, independientemente del tamaño global que tenga. Con esta técnica se consigue disponer casi siempre de RAM libre necesaria para el propio procesador.
Por el contrario, cuando cargamos demasiados procesos a la vez, el sistema se ralentiza, ya que tiene que estar pasando información continuamente desde el disco duro a la RAM y viceversa. Los SO multiusuario y multitarea son especialistas en esta gestión.