Memoria

Clasificado en Informática

Escrito el en español con un tamaño de 13,04 KB

La Fragmentación Puede ser de dos tipos:
Fragmentación interna: se debe a la diferencia de tamaños entre la partición de memoria y el objeto residente en ella. (particion estática)
Fragmentación externa: Desaprovechamiento de memoria entre particiones. (particiones dinámicas)
Algoritmos de ubicación: que dice?
Cola de procesos por partición: se encolan los procesos de acuerdo a la partición asignada, normalmente por tamaño.
Cola única: Los procesos a la espera de ser cargados se encolan en una cola única y un modulo administra el uso de todas las particiones.
Ventajas de la partición Estática.
Su administración es relativamente simple, pues para guardar información del estado del recurso se debe tener un registro de cada zona (libre u ocupada).
La protección entre procesos se puede realizar mediante el mecanismo de llaves de memoria o utilizando el registro base y la longitud de la zona.
Multiprogramación con particiones variables. (Dinámicas)
La memoria se divide en bloques de diferente tamaño de acuerdo a las necesidades del proceso.
Ventajas
su flexibilidad pues permite definir bloques del tamaño requerido,
terminando así con la fragmentación interna
Desventajas.
Cuando se libera una partición y ésta no se puede ocupar. Se originan huecos de memoria.
PASOS A CONSIDERAR EN ESTE TIPO DE PARTICIÓN:
Las particiones son variables en numero y longitud.
Cuando se carga un proceso en memoria se le asigna toda la memoria que necesita.
Cuando alguno de estos procesos termina y libera la memoria utilizada, ese espacio podrá ser usado por un proceso de igual o menor tamaño.
Que la memoria quede fragmentada en pequeños espacios que no sean lo suficientemente grandes como para poder asignarlos a los procesos listos.
Que la suma de estos fragmentos resulte en un espacio que si pueda ser utilizado, pero no disponible por no ser contiguo. (fragmentación externa)
La forma de solucionarla puede ser la compactación de la memoria, desplazando los procesos para que estén contiguos dejando los espacios libres juntos en un bloque.
Estrategias de COLOCACION: “espacios de memoria”  

Primer Ajuste (first fit)
: Se asigna el primer espacio que sea mayor al tamaño deseado.
Mejor Ajuste (best fit): Se asigna el espacio cuyo tamaño es el menor más grande
Peor Ajuste (worst fit): Se asigna el espacio mas grande cuyo tamaño exceda en la mayor cantidad al tamaño deseado.
El Siguiente Ajuste: Es igual que el `primer ajuste' con la diferencia que se deja un apuntador al lugar en donde se asignó el último espacio para realizar la siguiente búsqueda a partir de él.
Ajuste Rápido: Se mantienen listas ligadas separadas de acuerdo a los tamaños de los huecos, para así buscarle a los procesos un espacio más rápido en la cola correspondiente.
Overlays (espacios en blanco superpuestos): Una superposición mantiene en memoria solo aquellas instrucciones y datos necesarios en un momento dado.
COMPACTACION
Consiste en unir todos los bloques libres de memoria en una sola partición.
Se requiere soporte de reubicación dinámica de programas:
mover los bloques
ajustar registros base y límite
EN LA COMPACTACION SE DEBE CONSIDERAR LAS SIGUIENTES CONSIDERACIONES
Optimizar la compactación requiere de algoritmos más inteligentes
Se puede combinar swapping con particiones dinámicas para generar espacios libres.
es la Zona de Intercambio (swapping)
En un sistema con particiones estáticas el número de procesos con posibilidades de estar en estado listo viene determinado por el número de particiones
 
En uno de particiones dinámicas está dado por el tamaño de la memoria principal y el tamaño de los procesos, ya que en ambos métodos un proceso permanece en una partición hasta que finaliza.
se denomina a la
zona de intercambio a la parte del disco que se usa para guardar las imágenes de los procesos que no han de mantenerse en memoria física el método swapping consiste en:
que proceso que este en memoria salga temporalmente, porque necesita mas espacio o por que llega un proceso de mayor prioridad.

La técnica de llevar temporalmente un proceso a memoria secundaria se llama swapping. Y el espacio en disco donde se almacena, se llama
backing store.
Cuando se saca de memoria, se hace
swap-out; cuando se trae nuevamente, swap-in.
BINDING: es decir, cuando se pasa de la dirección lógica a la física.
Las direcciones de un proceso pueden ser lógicas, reubicables o físicas.
Dirección lógica: Es una referencia a una posición de memoria independiente de la asignación actual de datos a la memoria.
Se debe hacer una traducción a una dirección física.
Dirección relativa: La dirección se expresa como una posición relativa a algún punto conocido en memoria.
Dirección física: La dirección absoluta o la posición real en la memoria principal.



Memoria, se refiere a componentes de un computador, dispositivos y medios de grabación que retienen datos informáticos durante algún intervalo de tiempo.
almacenamiento primario" (a veces "almacenamiento principal"), para memorias de acceso aleatorio, y "almacenamiento secundario" para dispositivos de almacenamiento masivo.
Que es la Administración de La Memoria?
La parte del sistema operativo que se encarga del manejo de la memoria se denomina
administrador de la memoria.
Su labor consiste en llevar un registro de qué partes de la memoria se están utilizando y qué partes no, con el fin de asignar espacio a los procesos cuando estos hagan requerimientos
La organización y administración de la memoria principal, memoria primaria o memoria real es uno de los factores más importantes que influyen en el diseño de los SO.
multiprogramación, lo que lleva a tener varios procesos cargados en memoria al mismo tiempo.
Para compartir este recurso existen diversos Algoritmos de Administración de Memoria.
La Administración de Memoria depende fuertemente del hardware
Ley de Parkinson
“Los programas se expanden todo lo que pueden en la memoria”
Los programas no deben interferirse entre sí, por lo tanto, el S.O debe administrar la memoria eficientemente
un
proceso pueda ejecutarse debe estar ubicado en la memoria principal del computador.
Una parte del sistema operativo se encarga de:
Gestionar la memoria principal,
Esto implica llevar un registro de qué zonas están libres
Otros dos temas importantes en la gestión de la memoria son:
la carga de los programas de disco a memoria
La
protección varios procesos deben compartir la memoria del ordenador
Gestión de la Memoria
Su objetivo es conseguir el rendimiento de una memoria de gran velocidad al costo de una memoria de baja velocidad.
Los puntos básicos relacionados con la memoria pueden resumirse en:Cantidad, velocidad y costo
Cantidad cuanto más memoria haya disponible, más podrá utilizarse.
la velocidad a la que el procesador puede trabajar.
En suma, el costo de la memoria no debe ser excesivo, para que sea factible construir un equipo accesible.
Consideraciones de la Jerarquía,
Los programas y datos tienen que estar en la memoria principal para poder ejecutarse o ser referenciados
Los programas y datos que no son necesarios de inmediato pueden mantenerse en el almacenamiento secundario.
“caché” o memoria de alta velocidad, es más rápida y costosa que la memoria principa
Los programas en la memoria caché ejecutan mucho más rápido que en la memoria principal.
GESTION DE LA MEMORIA : Contigua y No Contigua
Asignación de Memoria Contigua: un proceso se ubica en su totalidad en posiciones consecutivas de memoria.
Asignación de Memoria No Contigua: Sin embargo, un proceso puede dividirse en bloques, y estos bloques pueden situarse en posiciones no contiguas de memoria principal.
sistemas de monoprogramación sólo existe un proceso de usuario, que disfruta de todos los recursos del PC.
direcciones absolutas: Una dirección absoluta de memoria es una dirección física (es decir, real) de la memoria.
direcciones relativas: direcciones relativas cuando se escribe suponiendo que empieza a cargarse en la dirección cero de la memoria.
En general, los sistemas operativos monousuario de monoprogramación no tienen
protección de la memoria
el único proceso de usuario que existe en la memoria, puede modificar posiciones de memoria pertenecientes al sistema operativo
La solución es a través de La protección mediante un
registro de límite integrado en la CPU.
El
hardware, en tiempo de ejecución, verifica que las direcciones generadas por el proceso de usuario no son superiores al valor del registro de límite
Gestión de la memoria en los sistemas multiprogramados (contigua)
multiprogramación la memoria debe ser compartida por varios procesos de cara a obtener una mayor utilización de los recursos del ordenador.
La protección se debe intensificar: proteger los espacios de los procesos entre si
Un proceso puede ocupar una partición y cada partición es ocupada por un y solo un proceso. Cuando se asigna memoria a un proceso, se asigna la partición. Cuando el proceso finaliza, se libera la partición.
Los sistemas Multiprogramados provocan que la gestión de la memoria se complique sustancialmente. Por que?
tiene que llevar un recuento de las zonas de memoria ocupadas por los procesos.
cuando un nuevo proceso entre en la memoria se le asignará una zona que estaba libre.
Multiprogramación con particiones fijas. (estáticas)
Es la manera más simple de administrar la memoria cuando estamos en sistemas multiprogramados es con particiones fijas.
Consiste en dividir la memoria en en
n partes de tamaño fijo y muchas veces desiguales
Desventajas: mala utilización de la memoria debido a la poca flexibilidad del método.
Es complicado correr programas más grandes que el tamaño de la partición, El programa puede ser mayor que los espacios de la partición ya que provoca que sólo una parte del programa esté en la memoria principal en cada instante =>
Superposición. (sobreposición / Solución Overlays)
Desaprovechamiento de memoria por haber realizado una mala partición. (se utiliza técnica de FRAGMENTACION)

Entradas relacionadas: