of 19
7/24/2019 Gestion de Memorias UNSAAC
1/19
Gestin de Memoria
Asignatura: Sistemas Operativos I
Docente : Emilio Palomino Olivera
7/24/2019 Gestion de Memorias UNSAAC
2/19
Contenido de la Presentacin
1. Descripcin del Tema y Objetivos2. Introduccin a la Gestin de Memoria
3. Tcnicas de Gestin de Memoria
4. Conclusiones
7/24/2019 Gestion de Memorias UNSAAC
3/19
Introduccin a la Gestin de Memoria
Qu es la Gestin de Memoria?
La gestin de memoria es una tarea realizada por elSistema Operativo de un computador que consiste encargar y descargar procesos en memoria principal paraque sean ejecutados. Para ello el S.O. gestiona lo que
se conoce como MMU o Unidad de Administracin deMemoria, el cual es un dispositivo hardware quetransforma las direcciones lgicas en fsicas.
Objetivos de la Gestin de Memoria
Ofrecer a cada proceso un espacio lgico propio.
Proporcionar proteccin entre los procesos.
Permitir que los procesos compartan memoria.
Maximizar el rendimiento del sistema.
7/24/2019 Gestion de Memorias UNSAAC
4/19
Introduccin a la Gestin de Memoria
Requisitos de la Gestin de Memoria
Reubicacin:En un sistema multiprogramado lamemoria se encuentra compartida por varios procesos,por lo tanto, los procesos deben ser cargados ydescargados de memoria.
Proteccin: En un sistema con multiprogramacin esnecesario proteger al sistema operativo y a los otrosprocesos de posibles accesos que se puedan realizar asus espacios de direcciones.
Comparticin: En ciertas situaciones, bajo la supervisiny control del sistema operativo, puede ser provechosoque los procesos puedan compartir memoria.
7/24/2019 Gestion de Memorias UNSAAC
5/19
Introduccin a la Gestin de Memoria
Requisitos de la Gestin de Memoria
Organizacin Lgica: Tanto la memoria principal como lasecundaria presentan una organizacin fsica similar,como un espacio de direcciones lineal y unidimensional.Debe existir una cierta correspondencia entre el S.O. y elhardware al tratar los datos y los programas de losusuarios de acuerdo a la estructura lgica que ellospresenten.
Organizacin Fsica: Debe ser parte de la gestin dememoria, la organizacin del flujo de informacin entre lamemoria principal y la memoria secundaria.
7/24/2019 Gestion de Memorias UNSAAC
6/19
Particiones Estticas
Tcnicas de Gestin de Memoria
Ejemplo de particin esttica en una memoria de 64 MB
7/24/2019 Gestion de Memorias UNSAAC
7/19
Asignacin de Memoria con Particiones Estticas
Tcnicas de Gestin de Memoria
Asignacin de Memoria en Particin Esttica
7/24/2019 Gestion de Memorias UNSAAC
8/19
Con particiones estticas surgen dos dificultades:
Un programa puede ser demasiado grande para caber enuna particin, por lo tanto si el programa no se ha diseado
mediante superposicin, simplemente no se puede ejecutar.De otro modo, podrn estar en memoria aquellos mdulosdel programa que se necesiten, pero se requerir que estosmdulos sean intercambiados a medida que la ejecucinprogresa.
Se malgasta el espacio interno a cada particin cuando elbloque cargado es ms pequeo, lo que se conoce comofragmentacin interna. Es decir, cualquier proceso porpequeo que sea, ocupar una particin completa.
Particiones Estticas
Tcnicas de Gestin de Memoria
7/24/2019 Gestion de Memorias UNSAAC
9/19
Particiones Dinmicas
Tcnicas de Gestin de Memoria
Efectos de la Particin Dinmica
7/24/2019 Gestion de Memorias UNSAAC
10/19
La asignacin de memoria en un esquema con particionesdinmicas, consiste en determinar en qu hueco ubicar unnuevo proceso. Para esto existen tres algoritmos: mejorajuste, primer ajuste o prximo ajuste.
Mejor ajuste: consiste en ubicar el proceso en el espaciode memoria que ms se ajuste a su tamao.
Primer ajuste: consiste en ubicar el proceso en el primerhueco disponible, recorriendo desde el inicio de la memoria,
cuyo tamao sea suficiente para el proceso.
Prximo ajuste: consiste en ubicar el siguiente huecodisponible, que sea suficientemente grande, a partir de laltima asignacin de memoria.
Tcnicas de Gestin de Memoria
Asignacin de Memoria con Particiones Dinmicas
7/24/2019 Gestion de Memorias UNSAAC
11/19
Particiones Dinmicas
Con particiones dinmicas surgen las siguientes dificultades:
Producto de la entrada y salida de procesos en la memoria,se van generando porciones cada vez ms pequeas de lamemoria sin utilizar, lo que se conoce como fragmentacinexterna.
Para solucionar este problema se debe recurrir a lacompactacin de la memoria de manera de eliminar losespacios (huecos) entre procesos. Esto significa que losprocesos deben ser reubicados en memoria en forma dinmica
Tcnicas de Gestin de Memoria
7/24/2019 Gestion de Memorias UNSAAC
12/19
Mtodos de administracin de memoria con un esquema de
particiones variables:
Mapa de bitsListas ligadasSistema de colegas o asociados
Ejemplo:
Tcnicas de Gestin de Memoria
Administracin de Memoria con Sistema de Colegas
7/24/2019 Gestion de Memorias UNSAAC
13/19
Requisito de Reubicacin
Cualquier mecanismo de gestin de memoria debe poderreubicar los procesos, sin perder las referencias que se hagandentro de l.
Tcnicas de Gestin de Memoria
Soporte Hardware para la Reubicacin
DireccinLgica
7/24/2019 Gestion de Memorias UNSAAC
14/19
Paginacin
Tcnicas de Gestin de Memoria
Asignacin depginas deprocesos amarcos libres
Estructura deDatos en eltiempo (f)
7/24/2019 Gestion de Memorias UNSAAC
15/19
Traduccin de Direccin lgica a Fsica en Paginacin
Ejemplo:
Direccin relativa 1502 en binario 0000010111011110
Tcnicas de Gestin de Memoria
Direccin lgica de 16
bits
7/24/2019 Gestion de Memorias UNSAAC
16/19
Segmentacin
Otra forma de subdividir el programa es la segmentacin. Eneste caso el programa y sus datos son divididos en segmentos,sin ser necesario que todos sean de igual tamao.
Traduccin de Direccin lgica a Fsica
Tcnicas de Gestin de Memoria
N Segm. Inicio de Segm. Longitud
Tabla deSegmentos delProceso
7/24/2019 Gestion de Memorias UNSAAC
17/19
Resumen de las Tcnicas de Gestin de Memoria
Tcnica Descripcin Ventajas Desventajas
Esquemas deAsignacin Contigua
Particin Esttica La memoria principal se divide en unconjunto de particiones estticas,durante la generacin del sistema.Un proceso se puede cargar en unaparticin de igual o mayor tamao.
Sencilla deimplementar, pocasobrecarga delsistema operativo.
Empleo ineficiente dela memoria debido a lafragmentacin interna.El nmero de procesosactivos es fijo.
Particin DinmicaLas particiones se creandinmicamente, de forma que cadaproceso se carga en una particinde su mismo tamao.
No hay fragmentacininterna, uso mseficiente de lamemoria principal.
Uso ineficiente delprocesador debido a lacompactacin paracontrarrestar lafragmentacin externa.
Esquemas deAsignacin noContigua
Paginacin La memoria principal se divide en un
conjunto de marcos de igual tamao.Cada proceso se divide en pginas deigual tamao que los marcos. Unproceso se carga situando todas suspginas en marcos libres pero nonecesariamente contiguos.
No tiene
fragmentacinexterna
Hay una pequea
cantidad defragmentacininterna.
Segmentacin Cada proceso se divide en segmentos.Un proceso se carga situando todossus segmentos en particiones
dinmicas que no tienen por qu sercontiguas.
No tienefragmentacininterna.
Mejora la utilizacin dela memoria y reduce lasobrecarga comparada
con la particindinmica.
7/24/2019 Gestion de Memorias UNSAAC
18/19
Conclusiones
Una de las tareas ms complejas e importantes que lleva a cabo el
sistema operativo es la de administrar la memoria.
Todos los mtodos aqu presentados, suponen que para ejecutar unproceso es necesario tenerlo completamente en memoria principal, yasea en espacios contiguos o no.
La paginacin es un esquema similar al de las particiones estticas,con la ventaja de que un proceso puede ser cargado en ms de unaparticin y en espacios de memoria no contiguos, lo que reduce lafragmentacin interna a la que se produce en la ltima pgina.
Por otro lado, la segmentacin es un esquema similar al de lasparticiones dinmicas con ventajas similares a la paginacin.
Tanto en las particiones estticas, como en la paginacin, esnecesario determinar el tamao que tendrn los bloques de memoria.
7/24/2019 Gestion de Memorias UNSAAC
19/19
Fin de la Presentacin