1. UNIVERSIDAD TECNOLOGICA DE PANAMA
FACULTAD DE INGENIERIA Y SISTEMAS COMPUTACIONALES
REDES INFORMATICAS
ASIGNATURA :SISTEMAS OPERATIVOS
PROFESOR :HORACIO V. SANDOVAL LU
TEMA:SISTEMA COMPAÑERO
ESTUDIANTES :ITDO ACOSTA
GILBERTO RAMOS
Erik Solís
2. SISTEMA COMPAÑERO
►ES un algoritmo escrito en [tan88],que se utiliza para
llevar el control de memoria y que tiene como principal
objetivo, cuando un proceso se intercambia ,acelerar la
unión entre huecos adyacentes.
Inicialmente
Retorno A
Solicitud 70
Cavidades
Memoria
Solicitud 35
Solicitud 80
Solicitud 60
Retorno B
Retorno D
Retorno C
128k 256k 384k 512k 640k 768k 896k 1M
A
A
A
B
B
B
B
C
C
C
C
C
D
D
64
64
64
64
64
64
128
128
128
128
128
128
128
128
256
256
256
512
512
512
512
512
512
512
1024
1
3
3
3
4
4
4
3
1
3. • utilizando la facilidad que tiene las computadoras para gestionar
potencias de 2 ,
el gestor de la memoria guarda una lista de bloques de tamaño
1,2,4,8,16,32..bytes, hasta el tamaño total de la memoria
• Cuando un proceso hace una petición de tamaño x para una memoria
De tamaño M, se localiza el hueco mas aproximado por exceso M/2.Si
no existe el hueco ,se localiza el hueco mas parecido y se divide por la
mitad tantas Veces como sea necesario para obtener el hueco deseado.
Las subdivisiones se realizaran preferentemente por la zona mas baja de
la memoria
Este Algoritmo Trabaja Así
4. Supongamos que tenemos una memoria
de 1Mb,inicialmente vacía .
A continuación llegan varias peticiones
de 70,35 y 80 K que son atendidas
teniendo en cuenta que los huecos son
potencias de 2, se produce, así mismo ,
una des asignación del proceso de 70k
,una petición de 60k y, finalmente ,la
salida de todos los procesos
Ejemplo
5. ventajas
• Los sistemas compañeros tienen una ventaja sobre otro tipos de
algoritmos. La ventaja es que cuando se libera un bloque de tamaño
2kbytes, el administrador de la memoria tiene que buscar una
cavidad libre del mismo tamaño para ver si es posible una unión. Con
otros algoritmos en los que se permite una división arbitraria, todas
las listas de cavidades deben de ser rastreadas lo que termina siendo
consumo de tiempo de memoria. Pero también resulta ineficiente en
la utilización de la memoria al asignar espacios de memoria que no
corresponden al proceso que se está ejecutando.
6. Desventajas
• es ineficiente porque también provoca la fragmentación interna y externa
en el desperdicio que se tiene cuando tenemos solicitudes de memoria que
no son múltiplos de dos.
en nuestro ejemplo , el proceso 1 solo utiliza 70k de los 128 asignados
7. ANALISIS DE SISTEMA COMPAÑERO
• Este análisis, nos permite determinar cuanta memoria se desperdicia en las cavidades a cualquier instante. Se
entiende por cavidad a los hoyos o espacios libres de memoria donde se guardan los procesos en ejecución.
El resultado de este análisis nos da dos reglas:
• 1. Regla del cincuenta por ciento. Tiene su origen en una asimetría fundamental entre procesos y cavidades.
Cuando las cavidades son adyacentes en la memoria, estas se unen en una sola. Los procesos adyacentes no
se combinan. Este mecanismo reduce en forma sistemática el número de cavidades.
• 2. La regla de la memoria no usada. Sea “F” fracción de la memoria ocupada por cavidades, “S” tamaño
promedio de los “N” procesos; “KS” el tamaño medio de cavidad para alguna K > 0 con una memoria total
de “M” bytes. N/2 cavidades ocupan M-NS bytes, Algebraicamente: (N/2) * KS = M-NS Al resolver esta
ecuación para determinar M se tiene: M=NS(1+K/2)
• La fracción de la memoria en cavidades es simplemente el número de, N/2 por el tamaño promedio de la
cavidad KS, dividido entre la memoria total M ó bien:
F = (MKS/2) / M = (MKS/2) / NS(1+K/2) = K / K+2
• Para poner un ejemplo de lo anterior:
• Si la cavidad promedio es ½ más grande que el proceso en promedio K = ½ y el 20 % de la memoria s
desperdiciará en cavidades. Si se reduce el tamaño promedio de la cavidad por ejemplo, mediante el uso del
mejor ajuste en lugar del primer ajuste, el desperdicio caerá cerca del 11 %. En tanto el tamaño promedio de
la cavidad sea una fracción apreciable del tamaño promedio del proceso, se desperdiciará una cantidad
sustancial de la memoria.