Sistemas operativos

Asignación Contigua de Memoria con Particiones Variables: Mejor Ajuste ("Best Fit")

Gabriela Andreu

*Creado con Easy Java Simulations

Nuestros Objetivos

• Describir la politica de asignación de memoria con particiones variables de mejor ajuste.

• Analizar la eficicencia de la técnica de mejor ajuste. Términos relacionados: Asignación Contigua, Compactación, Fragmentación Externa.

Términos relacionados: Asignación Contigua, Compactación, Fragmentación Externa.


La Asignación Contigua de Memoria

Memoria Principal con Ubicación Contigua

El sistema operativo (s.o.) es el responsable de asignar memoria principal a los procesos para que puedan ser ejecutados.


En un modelo de memoria con asignación contigua, todo el espacio lógico de un proceso (Código, Datos, Pila) ha de estar ubicado de forma contigua en memoria principal, es decir en direcciones físicas consecutivas

Cuando un proceso finaliza libera la memoria ocupada.






Asignando Memoria con Particiones Variables

Se considera inicialmente toda la memoria como un único hueco para ubicar procesos

Memoria Principal con un único hueco



Cada vez que llega un proceso al sistema se busca un hueco lo suficientemente grande para ubicarlo.
Con particiones variables sólo se le asigna al proceso el espacio que necesita del total del hueco y el resto pasa a formar un nuevo hueco.

Memoria Principal con un único hueco



El estado de la memoria varía con el tiempo, puesto que cuando un proceso finaliza su ejecución se libera su memoria y se crea un hueco nuevo.

Memoria Principal con dos Huecos y la lista de huecos

El s.o. lleva la contabilidad de huecos libres y el tamaño de dichos huecos.

La lista de huecos puede estar ordenada por direcciones o por tamaños, buscando siempre la eficiencia.

lista de huecos de memoria













La fragmentación externa aparece cuando hay suficiente memoria para ubicar un nuevo proceso, pero el espacio disponible no esta contiguo. La solución al problema de la fragmentación externa es la compactación.













Estudiamos la Política de Mejor Ajuste (“Best Fit”)

El sistema operativo (s.o.) lleva a cabo una politica de asignación de espacios a procesos intentando conjugar dos aspectos:buen aprovechamiento de la memoria y algoritmo de decisión eficiente.
La política de mejor ajuste asigna a un proceso el hueco más pequeño,de la lista de huecos, que sea lo suficientemente grande para poder ubicarlo en él.

La búsqueda de hueco, puede comenzar desde el principio de la lista de huecos o desde donde finalizó la búsqueda anterior. Para encontrar el hueco adecuado es necesario explorar la lista completa, a menos que ésta esté ordenada según tamaño de hueco.

PRACTIQUE EL FUNCIONAMIENTO DEL PRIMER HUECO ("BEST FIT")
Utilizando la figura podemos practicar la técnica del Mejor Ajuste:

Applet



Ahora podemos contestar a estas preguntas:

Resumimos lo aprendido

• La práctica nos ha mostrado que la estrategia del mejor ajuste tiene un aprovechamiento de la memoria aceptable.

• Esta estrátegia genera los huecos más pequeños posible, con la memoria sobrante una vez ubicado un proceso en un hueco.

• Además hemos comprobado que la estrategia del mejor ajuste sufre problemas de fragmentación externa.