lunes, 16 de noviembre de 2015

Gestion de Memoria.


Memoria.

La memoria es un componente imprescindible del ordenador que mantiene disponibles las instrucciones para que el microprocesador o CPU pueda ejecutarlas. También la memoria se encarga de almacenar temporalmente el resultado de los procesos ejecutados.

El proceso completo para que la CPU pueda realizar una operación es como sigue: la CPU lee las instrucciones necesarias desde un dispositivo de entrada, las carga en la memoria y las ejecuta. El resultado queda almacenado de nuevo en la memoria y posteriormente se podrá visualizar a través de un periférico de salida (monitor, impresora, etc)

Para almacenar información, la memoria está formada por un conjunto de casillas o células llamadas posiciones de memoria, en las que coloca instrucciones y datos. Para que el ordenador pueda acceder a los que necesite en cada momento, cada una de las posiciones de memoria está identificada por un número, denominado dirección de memoria.

Cada posición de memoria almacena un byte. Para medir el número tan elevado de células de memoria que necesita un ordenador se emplean los megabytes y los gigabytes.


Fragmentación de memoria.

Se llama fragmentacion interna a los espacios libres de memoria que esta asignada a un proceso, pero que este no ocupa. Esto en general se debe a que la memoria ha sido partida en bloques(fijos o dinamicos) y que el tamaño de bloque es mayor al tamaño ocupado por el proceso, ya sea porque el bloque fijo es demasiado grande, o el proceso muy pequeño o que el bloque dinámico solo puede partirse en potencias de 2 y el proceso ocupa entre una y otra potencia. Sea cual sea el caso siempre se conoce como fragmentacion interna a los espacios no usados que están asignados.

Lastimosamente la fragmentacion interna no puede corregirse al momento en que se produce ya que la memoria asignada a un proceso no puede partirse y liberarse sin matar o bloquear el proceso, pero, si puede evitarse haciendo una buena planificación de la administración de memoria y usando las mejores tácticas para cada situación partiendo o segmentando de forma similar procesos, datos y memoria, etc.

Segmentación de Memoria

La segmentación es un esquema para implementar espacios de direcciones virtuales que se usaba en los primeros computadores de tiempo compartido. Pese a que hoy en día se encuentra en desuso, es interesante estudiar la segmentación por su simplicidad.los segmentos residen en un área contigua de la memoria real del computador. La figura muestra un posible estado de la memoria de un computador con los distintos segmentos de varios procesos.Cada uno de ellos tienen información lógica del programa: subrutina, arreglo, etc. Luego, cada espacio de direcciones de programa consiste de una colección de segmentos, que generalmente reflejan la división lógica del programa.

Memoria Virtual.

La memoria virtual aparece unida a los sistemas operativos modernos. Permite simular una RAM de mayor tamaño que la que tienes instalada en tu ordenador. Las aplicaciones y sus datos, para poder ser usados por el procesador, tienen que pasar del disco duro, que es donde se encuentra almacenado todo cuando apagas al equipo, a la memoria RAM que puede ser accedida de forma directa por Surge, por tanto la necesidad de tener la mayor cantidad de esta, para poder hacer funcionar de forma correcta el sistema.

¿Por qué es tan importante?

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. Además, el uso de memoria virtual puede hacer que tu equipo funcione más lento si es necesario ir por datos al disco duro. Es siempre un compromiso entre la velocidad y la cantidad de datos que el sistema es capaz de procesar.
Jamás una configuración de más memoria virtual podrá ser mejor que una ampliación de memoria RAM. Es más, lo ideal sería tener un equipo que no necesitase tener esta característica activada.
Paginación de memoria:

Es 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.


Las páginas sirven como unidad de almacenamiento de información y de transferencia entre memoria principal y memoria auxiliar o secundaria. Cada marco se identifica por la dirección de marco, que esta en la posición física de la primera palabra en el marco de página.
Las páginas de un programa  necesitan estar contiguamente en memoria, aunque el programador lo observe de esta forma. Los mecanismos de paginación permiten la correspondencia correcta entre las direcciones virtuales (dadas por los programas) y las direcciones reales de la memoria que se reverencien.

Leer más: http://www.monografias.com/trabajos13/gesme/gesme.shtml#pag#ixzz3rg0TY261



Swapping:

El espacio de memoria de intercambio o Swap, es lo que se conoce como memoria virtual. La diferencia entre la memoria real y la virtual es que esta última utiliza espacio en el disco duro en lugar de un módulo de memoria.

Cuando la memoria real se agota, el sistema copia parte del contenido de esta directamente en este espacio de memoria de intercambio a fin de poder realizar otras tareas.
Utilizar SWAP tiene como ventaja el proporcionar la memoria adicional necesaria cuando la memoria real se ha agotado y se tiene que realizar un proceso. La desventaja es que, como consecuencia de utilizar espacio en el disco duro, la utilización de esta es más lenta.