Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
3Activity
0 of .
Results for:
No results containing your search query
P. 1
Memoria buddy sstem

Memoria buddy sstem

Ratings:

4.0

(2)
|Views: 2,356|Likes:
Published by shabedekam

More info:

Published by: shabedekam on May 17, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as RTF, PDF, TXT or read online from Scribd
See more
See less

07/18/2013

pdf

text

original

 
3.2.4Administracn de la memoria con el sistema de los asociados
Hemos visto en la sección anterior que el hecho de mantener todos los huecos en una omás listas ordenadas por el tamaño de estos agiliza la asignación, pero hace más lenta laliberación, puesto que hay que buscar en todas las listas de huecos para encontrar los vecinosdel segmento liberado. El sistema asociado (Knuth, 1973; Knowlton,
1965)
es un algoritmo deadministración de la memoria que aprovecha el hecho de que las computadoras utilizannúmeros binarios para las direcciones, con el fin de hacer más rápida la fusión de los huecosadyacentes cuando un proceso termina o se pasa a disco.Funciona de esta manera. El administrador de la memoria mantiene una lista de los bloques libres de tamaño 1, 2, 4, 8, 16, etc. bytes hasta el total de la memoria. Por ejemplo,con una memoria de 1M, se necesitan 21 de esas listas, desde 1 byte hasta 1 megabyte. Al principio, toda la memoria está libre y la lista correspondiente a 1M tiene una sola entrada,con un solo hueco de 1M. Las demás listas están vacías. La configuración inicial de lamemoria aparece en la figura 3-9 en el primer renglón.Veamos ahora como funciona el sistema asociado cuando un proceso de 70K se pasa a unamemoria de 1 M completamente libre. Puesto que las listas de huecos son sólo de potencias de2, se solicitan 128K, que es la mínima potencia de 2 lo suficientemente grande. No haydisponibles bloques de 128K, ni tampoco de
256K 
o 5 12K. Así, el bloque de 1M se divide endos bloques de
5
12K, llamados
socios,
uno en la dirección de memoria O y el otro en ladirección de memoria 5 12K. Uno de ellos, el correspondiente a 0, se divide entonces en dos bloques asociados de 256K, uno en O y otro en
256K.
El bloque inferior se divide en bloquesde 128K y el correspondiente a la dirección O (señalado con
 A
en la figura 3-9) se asigna al proceso.A continuación se intercambia un proceso de 35K. Esta vez, se redondea 35K a una potencia de 2 y se ve que no hay disponibles bloques de 64K, por lo que dividimos el bloquede 128K en dos bloques asociados de 64K, uno en 128K y otro en 192K. El bloque en 128K se asigna al proceso, señalado con
 B
en la figura 3-9. La tercera solicitud es de 80K.Veamos ahora lo que ocurre al regresar (liberarse) un bloque. Imaginemos que el bloque
 A
de 128K (del que sólo se utilizaron 70K) se libera en este momento. Pasa a la lista de bloques libres de 128K. Ahora, se necesita un bloque de 60K, por lo que sehace una revisión para ver si existen disponibles bloques del tamaño adecuado. El blo-que de 64K localizado en la dirección 192K sirve, por lo que es asignado.Se libera entonces el bloque
 B.
En este momento, se tienen libres un bloque de 128K en

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->