1. INTRODUCCIÓN:
La memoria es uno de los principales recursos de la computadora la cual debe administrarse con mucho cuidado. Actualmente, los sistemas de cómputo cuentan con gran capacidad de memoria, de igual manera, las aplicaciones también tienen alto requerimiento de memoria, lo que sigue generando escasez de memoria en los sistemas multitarea y multiusuario. El propósito principal de una computadora es el de ejecutar programas, estos programas deben estar en la memoria principal durante la ejecución.
2. GESTIÓN DE MEMORIA:
La gestión de memoria representa un vínculo delicado entre el rendimiento y la cantidad.
Siempre se busca mantener el mayor espacio posible en la memoria.
Ésta se divide en memoria principal y secundaria, la principal es la memoria RAM que es la que se ejecuta los procesos de un programa.
La secundaria es el disco duro, que es la encargada a su vez de cargar la información a la RAM y la que tiene la información de todos los programas.
2.1 QUÉ ES EL MMU (Unidad de almacenamiento de memoria )
Es un dispositivo de hardware formado por un grupo de circuitos integrados, responsable del manejo de los accesos a la memoria por parte del procesador y cumple tres funciones específicas.
2.1.1 RECUPERACIÓN:
Es la encargada de recuperar la información de un proceso que fue dejado de usar y se usó en espacio para otro proceso. Al estar ocupado el espacio de este se reubica en otra posición.
2.1.2 PROTECCIÓN
Evita que los programas accedan a porciones de memoria prohibidos, por ejemplo se puede evitar que un programa acceda o modifique sectores de memoria de otro programa.
2.1.3 COMPARTIR:
Es un proceso que está siendo usado y está cargado en la memoria RAM. Este proceso sirve para que otros que se estén usando o necesiten este proceso para funcionar, eviten cargar otro proceso que haga lo mismo que el que ya está en uso.
3. MONOPROGRAMACIÓN:
El esquema de administración de memoria es el más sencillo que hay, solo se tiene un proceso que ocupe la memoria a la vez. Sin embargo, este método es obsoleto en la actualidad ya que era visto en computadoras de un solo usuario y una sola tarea a la vez.
El modo de uso era el siguiente: el usuario introducía su disco a la computadora (por lo general los computadores de la época no tenían disco duro) y se ejecutaba la aplicación la cual ocupaba por completo la memoria del equipo.
4. MULTIPROGRAMACION:
Es un término que significa que muchos programas que no están relacionados unos con otros pueden residir en la memoria de una computadora y tomar turno usando la unidad central de procesamiento, cualquiera que haya usado Windows, Unix o Linux ha experimentado multiprogramación.
4.1 ASIGNACIÓN CONTÍNUA:
Cada programa ocupa un bloque continuo y sencillo de localizaciones de almacenamiento que se divide en partición estática y partición dinámica o variable.
En el caso de particiones fijas.
La memoria se puede organizar dividiéndose en diversas partes, las cuales pueden variar en tamaño. Esta partición la puede hacer el usuario al iniciar una sesión con la máquina.
Cuando llega un proceso que necesita memoria, buscamos un hueco lo suficientemente grande para el proceso. Si encontramos uno, se asigna únicamente el espacio requerido, manteniendo el resto disponible para futuros procesos que requieran.
Es la memoria que queda desperdiciada al usar los métodos de gestión de memoria. La fragmentación es generada cuando durante el remplazo de procesos quedan huecos entre dos o más procesos de manera no continua la fragmentación puede ser
4.1.2.1.1 FRAGMENTACIÓN EXTERNA:
Existe el espacio total de la memoria para satisfacer un requerimiento pero no es contigua
4.1.2.1.2 FRAGMENTACIÓN INTERNA:
La memoria asignada puede ser ligeramente mayor que la requerida; esta referencia es interna a la partición, pero no se utiliza.
4.1.2.2 COMPACTACION:
Técnica que consiste en trasladar todas las áreas ocupadas del almacenamiento hacia algún extremo de la memoria.
Es una solución de la fragmentación externa el objetivo consiste en desplazar el contenido de la memoria libre en un solo bloque de gran tamaño.
La compactación no siempre es posible, solo es posible si la relocalización es dinámica.
4.1.2.3 ALGORITMOS PARA LA ASIGNACIÓN:
EL proceso de compactación son unas instancias particulares del problema de asignación de memoria dinámica, y esta se refiere a satisfacer una necesidad de tamaño (N) en una lista de huecos libres. Entre tantas posibilidades existe una que determina el hueco más indicado en el momento de asignar. A continuación estrategias comunes para la asignación de algún hueco en la tabla.
4.1.2.3.1 PRIMER AJUSTE: Consiste en asignar el proceso en el primer hueco que se halle y se ajuste sin importar que el hueco sea más grande que el tamaño del proceso a insertar.
4.1.2.3.2 MEJOR AJUSTE: Consiste en ubicar el proceso según su tamaño en el hueco más apropiado, esto con el fin de evitar desperdicio de memoria.
4.1.2.3.3 PEOR AJUSTE: En este algoritmo se busca que el tamaño del hueco concuerde con el tamaño del proceso. Es decir que sea el tamaño del hueco sea igual o mayor que el del proceso, sin importar que se pueda perder gran cantidad de espacio en la memoria.
4.1.2.4 MÉTODOS:
4.1.2.4.1 MAPA DE BiTS: Este tipo de administración divide la memoria en unidades de asignación, las cuales pueden ser tan pequeñas como una letra o tan grandes como varios Kb. Cada unidad pertenece a un bits, la cual toma valor de 0 si está vacío y 1 si está ocupado ó viceversa.
4.1.2.4.2 LISTAS LIGADAS: Otra forma de mantener un registro en la memoria es mediante una lista ligada, en donde un Segmento puede ser un proceso o un hueco entre dos. En la lista ligada se especifica la (H) como hueco, la (P) como un proceso, el numero es la dirección donde comienza y su tamaño y un puntador a la siguiente entrada.
4.1.2.4.3 SISTEMAS DE ASOCIADOS: Este sistema es basado en dividir la memoria en potencias de byts, esto quiere decir que si el primer espacio es 2° el tamaño es de 1 byts, si es de 2^1 el tamaño es de 2, y así sucesivamente.
5.1 PAGINACION: Los métodos que hasta el momento hemos visto de administración de memoria nos ha dejado un problema que es la fragmentación “huecos dentro de la memoria que por su tamaño no se pueden usar” lo cual provoca un desperdicio de memoria principal-
Las unidades correspondientes en la memoria se llaman marcos o frames las páginas y los frames tiene siempre el mismo tamaño, cada página tiene un número que se utiliza como índice en la tabla lo que da resultado al número del marco. El número del marco se determina a partir del número de páginas formando una dirección para enviar a la memoria.
5.2 SEGMENTACION: Esta es diferente de la paginación en un sentido esencial, las paginas tienen un tamaño fijo igual al dé el frame y los segmentos no. Estos tamaños varían de acuerdo al tamaño de los procesos.
6. CONCLUSIONES:
-El administrador de memoria siempre va a estar trabajando para que el sistema operativo cuente con un buen funcionamiento.
-Para el usuario no es permitido administrar la memoria principal ya que esa función corresponde al procesador.
-Podemos observar que con el trascurrir de los años las técnicas de asignación de memoria han evolucionado para poder disminuir el desperdicio de tiempo y espacio en la memoria principal.
No hay comentarios:
Publicar un comentario