PARTICIONES DINÁMICAS RE
LOCALIZABLES:
Con este
esquema de asignación de memoria, el administrador de memoria relocaliza los
programas para reunir los bloques vacíos y compactarlos, para hacer un bloque
de memoria lo bastante grande para aceptar algunas o todas las tareas en espera
de entrar.
La
compactación no es una tarea sencilla. Primero, todos los programas en memoria
se deben re-localizar, de manera que queden contiguos; luego hay que ajustar
cada dirección y cada referencia a una dirección en todo programa para tomar en
consideración la nueva localización del programa en memoria.
La fragmentación
interna es la pérdida de espacio en disco debido al hecho de que el tamaño de
un determinado archivo sea inferior al tamaño del cluster, ya que
teóricamente el archivo estaría obligado a ser referenciado como un cluster
completo. Los cluster(s) son contiguos de forma que desde el último bit del
archivo situado en el cluster "a" hasta el primer bit del archivo
situado en el cluster contiguo (es decir "b") queda un espacio sobrante
siempre teniendo la condición de que el archivo del cluster "a" fuera
más pequeño que el cluster en sí.
Por eso se sugiere
no disponer de un gran tamaño de partición en los discos nuevos donde la
capacidad es muy importante. Por ejemplo si nuestro clúster es de 18KB (18.432
bytes) por más que un archivo ocupe menos, en nuestro disco ocupara 18KB. Esto
sugiere una pérdida de ese espacio que dice utilizar pero no utiliza.
Por eso, en
nuestro ejemplo, un archivo de 3KB ocupara en nuestro disco lo mismo que uno de
10KB, o sea 18 KB. Esa pérdida de espacio se denomina fragmentación interna, y
no se corrige con el desfragmentador, sino disminuyendo el tamaño de la
partición.
En la memoria del
sistema la fragmentación se produce cuando los procesos asignados han ocupado
posiciones no contiguas de memoria dejando demasiados bloques libres de pequeño
tamaño, en los que no "caben" nuevos procesos.
En sistemas de
ficheros la desfragmentación trata de resolver este problema, alineando los
bloques de datos contiguos y juntando los bloques libres, produciendo así
fragmentos mayores que sí serán elegidos para futuros ficheros. En la memoria
principal se soluciona compactando los procesos para que estos ocupen
posiciones contiguas y dejar los bloques libres juntos, o también se soluciona
con la paginación de memoria.
Técnicas de Asignación de memoria
1er Ajuste
Se encarga de particionar la memoria y llenar de manera rápida la memoria, es un ajuste de rapidez
Mejor ajuste
Se encarga de poner las tareas en mejores espacios por lo cual proporcionando que la memoria tenga muy poca fragmentacion, es un ajuste de optimista
peor ajuste
Asigna tareas muy pequeñas en espacios muy grandes, usado para tener precisión, se utilizo en el lenguaje falscran en el viaje a la luna.
Siguiente ajuste
Se asigna una tarea, la siguiente tarea a asignar se evalúa desde la siguiente partición a la tarea anterior no desde el inicio de la memoria
Casos de eliminación
Las tareas al terminar su proceso de memoria y al salir en dinámicas ocurren tres casos
1-- Entre 2 espacios ocupados: 1 libre
2- Entre 1 espacio ocupado y 1 vació: une 2 particiones
3- Entre dos espacios de memoria Vacíos: une 3 particiones
Dinámicas re localizables
El administrador de memoria re localizar los programas para reunir los bloques vacíos y los compacta para hacer un bloque de memoria lo bastante grande, lo que permite que la fragmentacion externa se elimine entre tareas lo que da un mejor funcionamiento a la memoria, menor fragmentacion mas espacios para tareas.
Este proceso se ejecuta por 3 razones
1-Tiempo
2-% de memoria
3- Tareas en cola
No hay comentarios:
Publicar un comentario