Una nueva Administraion de la memoria en maquinas virtuales
Enviado por Kate • 14 de Enero de 2019 • 3.964 Palabras (16 Páginas) • 438 Visitas
...
Las técnicas de la gestión de memoria son las siguientes:
SOLAPAMIENTO: Esta técnica funciona dividiendo en módulos o en partes el programa cuyo tamaño sobrepasa la capacidad de la memoria principal. Después los módulos en los que fue dividido el programa se introducen en los lugares adecuados de la memoria, y de acuerdo a la lógica del programa, las instrucciones que necesita el programa para poder ser ejecutado y para poderse cargar en memoria principal, la lógica del programa el la encargada de anticiparse para saber que módulos necesitara para que el programa funcione correctamente. Es decir la lógica del programa es la encargada de anticiparse para ver cuales módulos en los que fue dividido el programa ocupara en un inmediato futuro.
REUBICACIÓN: En sistemas con multiprogramación se necesita que varios programas ocupen simultáneamente la memoria y algunos otros recursos que requieren los programas para poder ser ejecutados. El tiempo que ocupan los programas la CPU se va distribuyendo entre ellos de acuerdo a una política de prioridades. La ubicación de los programas en la memoria no se conoce en tiempo de ejecución, la razón por la que no se conoce la ubicación de los programas en el tiempo de ejecución es porque los programas se pueden estar ejecutando en varias partes de la memoria por lo que no se conoce una ubicación precisa de donde se encuentran ejecutándose los programas, por lo que no se pueden generar direcciones absolutas o precisas de donde está ubicado el espacio que ocupa dicho programa en la memoria. La encargada de conseguir una asignación dinámica de memoria en tiempo de ejecución es la técnica de reubicación.
PAGINACIÓN: Esta técnica es muy parecida a la de solapamiento. El espacio de la memoria principal se divide en bloques de tamaño fijo, es decir la memoria se divide en partes iguales para formar las denominadas páginas que son fundamentales para una eficaz administración de memoria. El Sistema Operativo es el encargado de asignar páginas físicas a los programas que se están ejecutando a esto se le conoce como multiprogramación. De esta forma el tiempo y los recursos de la CPU pueden distribuirse entre los programas que se están ejecutando. La paginación es fundamental para que suceda la multiprogramación porque es la encargada de dividir la memoria en partes iguales para que así los programas solo ocupan la cantidad de memoria que necesitan para realizar su trabajo y no ocupen memoria que no necesitan, porque esto sería un desperdicio de memoria y esa memoria la podría ocupar otro programa que si la necesite.
PROTECCIÓN: Si varios programas comparten la memoria principal debe asegurarse que ninguno de ellos pueda modificar el espacio de memoria que los demás programas utilizan. Las pruebas de seguridad en tiempo de compilación no son suficientes para garantizar la protección. Esta protección debe mantenerla en tiempo de ejecución el sistema de administración de la memoria que es el encargado de verificar que los programas no accedan a otras partes de la memoria que ya están ocupadas y que no deben de ser modificadas a menos que los otros programas requieran información de alguna parte de la memoria para que pueda funcionar correctamente pero esto y otros permisos los concede el sistema de administración de la memoria quien es el encargado de verificar que dicha protección se cumpla.
COMPARTICIÓN: Con frecuencia los programas de un sistema con multiprogramación deben poder compartir y actualizar su información, por ejemplo, un sistema de bases de datos debe comparar la información que ya tenía registrada anteriormente con la nueva información o con la que ha sido modificado recientemente. No es necesario tener varias copias de una ruta o archivo si se permite que todos los programas accedan a una misma copia, es decir para garantizar la compartición debe haber un archivo original que es el que no es modificado por cualquier programa y una copia de este archivo que es al cual puede acceder cualquier programa.
MEMORIA VIRTUAL
En un ordenador con memoria virtual las direcciones de memoria que ocupan los programas las cuales son generadas por la CPU, dichas direcciones hacen referencia a un espacio mayor que el espacio físico de memoria realmente disponible que el que tiene nuestro ordenador, es decir la memoria virtual nos brinda un espacio mucho mayor que el que tiene nuestro ordenador disponible para utilizar y sin ningún costo adicional por que nuestro ordenador ya lo tiene integrado. Los programas utilizan virtualmente un tamaño físico de memoria principal mucho mayor que el realmente disponible. Por eso es tan importante la memoria virtual por que los programas ocupan demasiada memoria para poder trabajar correctamente, ya que la memoria física la mayoría de veces no es suficiente para que los programas funcionen adecuadamente y podría decirse que la memoria virtual entra al rescate ayudando a la memoria física brindándole más espacio o mejor dicho memoria virtual para que al programa en ejecución no le falte memoria para poder realizar su trabajo correctamente.
El número de páginas en las que se divide la memoria virtual por lo general es mayor que el número de páginas disponibles de la memoria física. Por esta razón, en cada momento sólo algunas de las copias de un conjunto de páginas virtuales del programa que se esta ejecutando se encuentran en la memoria física, esto se hace por que como existen mas paginas en la memoria virtual que en la memoria física solo se cargan algunas en la memoria física para no sobrecargar la memoria física y para que no sucedan fallos en el programa que se está ejecutando. Este conjunto recibe el nombre de conjunto activo porque es el que está cargándose en la memoria física, además de que dicho conjunto no siempre será el mismo porque las paginas van a cambiar a según el programa las vaya necesitando, y resulta la mayoría de veces muy estable a lo largo del tiempo. Esta es la clave del buen funcionamiento de la memoria virtual, es decir la división de la memoria virtual en páginas es la clave de este buen funcionamiento.
MEMORIA VIRTUAL PAGINADA
Es la traducción de una dirección virtual a una dirección física, esto se realiza mediante tablas de páginas que son encargadas de verificar si una dirección virtual coincide con una dirección física a la hora de realizar la traducción, para realizar la traducción se debe verificar en la tabla de páginas si la dirección virtual coincide con la dirección física es decir si el bit que ocupa la dirección física contiene un numero uno la dirección coincide y ocurre un acierto de página,
...