Administración de memoria en el sistema

Administración de memoria

Una de las tareas más importantes y complejas de un sistema operativo es la gestión dememoria. La gestión de memoria implica tratar la memoria principal como un recurso para asignar y compartir entre varios procesos activos. Para un uso eficiente del procesador y de los servicios de E/S, resulta interesante mantener en memoria principal tantos procesos como sea posible.
 Las herramientas básicas de la gestión de memoria son la paginación y la segmentación. En la paginación, cada proceso se divide en páginas de tamaño constante y relativamente pequeño. La segmentación permite el uso de partes de tamaño variable. También es posible combinar la segmentación y la paginación en un único esquema de gestión de memoria.

La parte del sistema operativo que administra la memoria se llama administrador de memoria. Su labor consiste en llevar un registro de las partes de memoria que se estén utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando estos la necesiten y liberarlo cuando terminen, así como administrar el intercambio entre la memoria principal y el disco,en los casos en que la memoria principal no pueda albergar a todos los procesos.

 Memoria principal/real

La memoria principal es el lugar donde el CPU lee las instrucciones a ejecutar, asi como algunos datos a emplear. Por lo general esta memoria es de mayor costo que la memoria secundaria, pero el acceso a la información contenida en ella es de más rápido acceso. Solo la memoria cache es más rápida que la principal, pero su costo es a su vez mayor. Existen dos tipos de memorias RAM: SRAM y DRAM.

Memoria virtual

Si nos quedamos sin memoria no podremos ejecutar más programas y los que estamos ejecutando tendrán problemas para trabajar con más datos. Pero como hemos visto no todos son ventajas, el uso de memoria virtual puede hacer que tu equipo funcione más lento si es necesario ir por datos al disco duro.

Organización de memoria

Los administradores de memoria utilizan diferentes técnicas para el manejo de la memoria, las más conocidas son la paginación y segmentación. Se utilizan estas técnicas con el fin de tener la mayor cantidad posible de memoria que requiera cada proceso, que sea la que necesita ni más pequeña ni más grande.
Dichas tecnicas son las siguientes:
  • PaginaciónEs una técnica de manejo de memoria, en la cual el espacio de memoria se divide en secciones físicas de igual tamaño, denominadas marcos de página. Los programas se dividen en unidades lógicas, denominadas páginas, que tienen el mismo tamaño que los marcos de páginas. De esta forma, se puede cargar una página de información en cualquier marco de página.
  • SegmentaciónOtro modo de subdividir el programa es la segmentación. En este caso, el programa y sus datos asociados se dividen en un conjunto de segmentos. No es necesario que todos los segmentos de todos los programas tengan la misma longitud, aunque existe una longitud máxima de segmento.
    La diferencia, en comparación con la partición dinámica, radica en que, con segmentación, un programa puede ocupar más de una partición y éstas no tienen por qué estas contiguas.

  • Fragmentación: Básicamente sucede cuando los procesos en ejecución toman distintas secciones de la memoria, ya sea con el uso de real o en combinación de la virtual, pero ocupa distintos espacios y al ser reemplazados o terminar algún proceso, se dejan espacios en blanco o sin procesos que no se toman en cuenta para uno nuevo.
  • Compactación: Sucede al momento en que los espacios son eliminados, de forma que se reacomodan los procesos para que no haya espacios en blanco y se tenga un mejor control de acceso para los datos que está manejando el ordenador. 
Sobre esta linea se comparte un mapa conceptual con las generalidades del manejo de memoria. 
Fuentes:
 
Ali. (16 de Noviembre de 2013). Blogger. Obtenido de http://ali-air.blogspot.mx/2013/11/33-organizacion-de-memoria-virtual.html: http://ali-air.blogspot.mx/2013/11/33-organizacion-de-memoria-virtual.html
CERVANTES, G. A. (9 de abril de 2012). Obtenido de sistoperativos1: https://sistoperativos1.wordpress.com/2012/04/19/administracion-de-memoria-memoria-real-o-fisica-y-memoria-virtual/
Iglesias, A. L. (17 de junio de 2016). AboutEspañol. Obtenido de ¿Qué es la memoria virtual y por qué es importante?: https://www.aboutespanol.com/que-es-la-memoria-virtual-y-por-que-es-importante-841348
Materia de sistemas operativos. (s.f.). Obtenido de https://sites.google.com/site/materiasisoperativo/unidad-3-administracion-de-la-memoria/3-4-administracion-de-memoria-virtual
Muñoz, G. A. (22 de agosto de 2002). Obtenido de http://www2.elo.utfsm.cl/~elo321/2002/files/sem_06_01.pdf
Vergara, S. (1 de febrero de 2016). Blogger. Obtenido de Paginacion y segmentacion : http://sindyvergara3.blogspot.mx/2016/02/normal-0-21-false-false-false-es-ec-x.html


No hay comentarios:

Publicar un comentario