domingo, 14 de febrero de 2016

Particiones de Memoria 

Las particiones de memoria pueden ser definidas estáticamente durante la generación del sistema o dinámicamente en respuesta a las demandas del usuario.
       
Cuando el particionamiento es estático, se produce un desaprovechamiento de la memoria, cuando se carga un objeto de menor tamaño que la partición y al espacio que se desaprovecha, se le denomina fragmentación interna.
El particionamiento dinámico, elimina este problema, haciendo cada partición tan grande como sea necesario para ajustarse al objeto dado, por lo tanto, cuando se lleva un objeto fuera de la memoria, la partición ocupada por él, se devuelve a la reserva de espacio libre.
            Después de algún tiempo de funcionamiento, el particionamiento dinámico produce una dispersión de espacio libre en áreas discontinuas, que son de un tamaño insuficiente para albergar otro objeto. A este tipo de desaprovechamiento de la memoria, se le denomina fragmentación externa.
            Respecto a la manera de abordar la asignación de memoria no contigua, se pueden utilizar las dos técnicas siguientes:
·         La Paginación.
·         La Segmentación.


En la Paginación, la memoria principal se divide en un conjunto de marcos de página de igual tamaño y cada proceso se divide en una serie de páginas del mismo tamaño, que los marcos de página en que se ha dividido la memoria principal. El proceso se cargará situando todas sus páginas en los marcos libres, que no necesariamente serán contiguos.
            La utilización de la Paginación, elimina la fragmentación externa, pero puede producirse una pequeña fragmentación externa en la última página de un proceso.
            En la Segmentación los programas se dividen en módulos y cada módulo se convierte en un segmento durante la compilación del programa. Un proceso se cargará, situando todos sus segmentos, en particiones dinámicas, que no necesariamente tienen que ser contiguas.
            La utilización de la Segmentación, elimina totalmente la fragmentación interna, pero puede producirse fragmentación externa, que se elimina con la compactación.
            Independientemente del tipo de asignación de la memoria que se utilice, la posible eficacia de un gestor de memoria, es mayor en sistemas donde los programas son reubicables, es decir, que puedan ser cargados en las distintas áreas de memoria, disponibles en un momento dado.
            Con objeto de proporcionar unas bases comunes, para la evaluación de cada esquema analizado, se establecen los siguientes criterios de medida:
·         Memoria desaprovechada.
·         Complejidad en el tiempo.
·         Procesos suplementarios de acceso a memoria.

La memoria desaprovechada se considera que es la fracción de memoria física sin usar, que un esquema de gestión de memoria dado, es incapaz de asignar, cuando procesa una secuencia de peticiones de memoria.

La complejidad en el tiempo, se refiere a la dificultad del cálculo que es preciso realizar, para la asignación o desasignación de la memoria, utilizado por un esquema determinado de gestión de la memoria.
 Los procesos suplementarios de los accesos a memoria, se refieren a la duración de las operaciones adicionales, llevadas a cabo por un esquema de gestión de memoria dado, cuando accede a la memoria.
            Una definición más amplia de la memoria desaprovechada, consiste en la posibilidad de mantener residentes en memoria, múltiples copias de un único objeto común, debido a un deficiente o restringido uso compartido.
            Un gestor de memoria ideal debe:
Minimizar:
·         La memoria desaprovechada.
·         La complejidad en el tiempo.
·         Los procesos suplementarios de acceso a memoria.
            Proporcionar:
·         Una buena protección de memoria.
·         Un uso compartido flexible.

Estos requerimientos no son realizables simultáneamente, por los esquemas de gestión de memoria que se van a describir, por lo tanto, un diseñador de un sistema operativo, tendrá que identificar y establecer la prioridad de un diseño particular, para crear un esquema de gestión de memoria apropiado a los requerimientos del sistema dado.
REQUISITOS PARA LA GESTIÓN DE MEMORIA.
            Al realizar un estudio de los diversos mecanismos y políticas relacionadas con la gestión de memoria, conviene tener presente los requisitos que se deben satisfacer, en el diseño de un módulo de gestión de memoria:
·         Reubicación.
·         Protección.
·         Compartición.
·         Organización lógica.
·         Organización física.




1 comentario: