Você está na página 1de 6

Sistemas Operativos II

Captulo 1. Introduccin a la gestin de memoria.

Problemas Resueltos Captulo 1. Sistemas de Asignacin Contigua Basados en Particiones


1.- Notas y criterios para los problemas 2.- NOTA GENERAL: Tema 1 Introduccin a la gestin de memoria. 3.- Problemas y cuestiones de asignacin contigua
1. Se tiene un sistema de particiones mltiples con un soporte hardware basado en la tcnica de registros cota inferior y superior. Dado un programa P que ocupa T palabras y se encuentra ubicado en memoria a partir de la posicin de memoria fsica C. a) Cul es el valor de cada registro para el programa P? b) Cul es el rango de las direcciones que emite P? c) Cul es el rango de direcciones reales en que se transforman las direcciones que emite P? Solucin a) Se trata de esquemas basados en reubicacin en tiempo de compilacin y carga. La cota inferior ser C, la cota superior ser C+T. b) El rango de direcciones de P es entre C y C+T-1. c) Las direcciones fsicas reales en las que se ha de transformar se encuentran en el rango entre C y C+T-1. 2. Se tiene un sistema de particiones mltiples con un soporte hardware basado en la tcnica de registros base y lmite. Dado un programa P que ocupa T palabras y se encuentra ubicado en memoria a partir de la posicin de memoria fsica C. a) Cul es el valor de cada registro para el programa P? b) Cul es el rango de las direcciones que emite P? c) Cul es el rango de direcciones reales en que se transforman las direcciones que emite P? Solucin a) El registro base y lmite se usa en esquemas basados en reubicacin en tiempo de ejecucin. El valor del registro base ser C y el valor del registro lmite ser T. b) El rango de direcciones de P es entre 0 y T-1. c) Las direcciones fsicas reales en las que se ha de transformar se encuentran en el rango entre C y C+T-1.

Sistemas Operativos II

Captulo 1. Introduccin a la gestin de memoria.

3. Analizar los esquemas de proteccin de particiones mltiples desde el punto de vista de la reubicacin. Solucin Con particiones mltiples de memoria, aparecen dos opciones que el tamao sea fijo, o que el tamao de la particin sea variable. En las de tamao fijo aparece el problema de la fragmentacin interna y en las de tamao variable aparece el problema de la fragmentacin externa. Los esquemas de proteccin que se utilizan para particiones variables son: registro cota inferior y registro cota superior o registro base y registro lmite. En el primero la traduccin de direcciones se realiza en tiempo de compilacin resultando direcciones absolutas de memoria y procesos no reubicables. En el esquema de registro base y lmite la traduccin de direcciones lgicas a fsicas se realiza en tiempo de ejecucin resultados por tanto procesos reubicables. 4. Sea un sistema gestionado con un mecanismo de particiones variables en el que la memoria fsica tiene 4200 palabras. En un instante la memoria est ocupada por 3 bloques de cdigo/datos de la forma: Direccin inicial 1000 2900 3400 longitud 1000 500 800

La estrategia utilizada cuando se carga un nuevo bloque en memoria es la del mejor ajuste en primer lugar. Si falla, se crea un hueco mayor desplazando los bloques en memoria hacia la direccin 0. Esta accin siempre empieza con el bloque actualmente en la direccin de memoria ms baja, y prosigue nicamente hasta encontrar un hueco suficiente para el nuevo bloque. A partir de ese momento, hay que cargar tres bloques de 500, 1200 y 200 (en ese orden). Describir el contenido de la memoria una vez satisfechas las peticiones. Solucin La situacin inicial de la memoria seria la siguiente:

1000

2899 2900

0000

0999

1999

2000

3399

3400

Bloque 2

A partir de este momento cargamos los nuevos bloques, comenzando por el bloque 4 de 500 palabras utilizando el mejor ajuste.

Bloque 3

Bloque 1

4199

Sistemas Operativos II

Captulo 1. Introduccin a la gestin de memoria.

0000

0999

1000

1999

2000

2499

2900

3399

3400

Bloque 2

Bloq ue 4

El siguiente bloque que se ha de ubicar en memoria es el bloque 5 con 1200 palabras. Hay espacio suficiente en memoria pero aparece el problema de la fragmentacin externa por tanto se hace necesario utilizar un algoritmo de compactacin.

0000

1000

2899 2900

0999

1499

1500

3399

3400

Bloque 3
3400

Bloque 1

Bloque 1

Bloque 2

Despus de la compactacin han quedado libres 1400 palabras contiguas en un nico hueco, la suma de los tamaos de los bloques 5 y 6 son de 1400 por tanto no habra problema para la ubicacin.
0000 0999 1000 1499 1500

Bloque 4

2699

2900

3399

Bloque 3
libre 150 K

Bloque 5

Bloque 1

Bloque 2

Bloque 6

5. Sea un sistema donde se utiliza un esquema de asignacin con mltiples particiones de tamao fijo. Qu determinara el lmite del grado de multiprogramacin de dicho sistema? Solucin Es un esquema donde la memoria se encuentra dividida en varias particiones de tamao fijo, cada particin nicamente puede contener un proceso y el grado de multiprogramacin est limitado por el nmero de particiones. 6. Sea un sistema gestionado por particiones mltiples de tamao variable con compactacin. En un instante dado, se tiene la siguiente ocupacin de la memoria:
P1 180K

Bloq ue 4

libre 400 K

P2 100K

Bloque 3

4199

4199

4199

Sistemas Operativos II

Captulo 1. Introduccin a la gestin de memoria.

Se utiliza la tcnica del mejor ajuste. En la cola de trabajos tenemos en este orden: P4(120K), P5(200K) y P6(80K), los cuales deben ser atendidos en orden FIFO. Suponiendo que no finaliza ningn proceso y tras intentar cargar en memoria todos los procesos que estn en la cola. a) Indicad cuntas particiones quedan libres y de qu tamao son. b) Si en esta situacin se aplica compactacin, indicar qu proceso o procesos deberan moverse para que el nmero de Kbytes manejados fuese el menor posible y quede un nico hueco. c) Si los registros base de cada proceso son, respectivamente, B1, B2, B3, B4, B5 y B6, indicar cmo han cambiado los registros base correspondientes al proceso o procesos que se han movido debido a la compactacin. Solucin a) Quedan dos particiones de tamaos 120K y 30 K respectivamente.
P4 120 K

P1 180K

P5 200K

P6 80K

libre 120K

P2 100K

libre 30K

b) Debera moverse el proceso P4 al hueco de 120K, con lo cual quedara un nico hueco de 150K. c) Todos los registros bases quedan igual que antes de la compactacin exceptiuando el del proceso P4 cuyo B4 contendr 460 K (se ha considerado que P1 se encuentra ubicado en las direcciones ms bajas de memoria). 7. Indique si las siguientes afirmaciones son verdaderas (V) o falsas (F) y justifiquelo. a) La gestin de memoria basada en particiones fijas utiliza el mtodo de compactacin para resolver el problema de fragmentacin externa. b) El mtodo de superposiciones ("overlays") se puede utilizar en un sistema que no gestione memoria virtual. c) El espacio de direcciones fsicas depende del bs de direcciones del sistema. d) El espacio de direcciones lgicas est limitado por el tamao de la memoria fsica. e) La compactacin de un proceso slo se puede realizar en un mtodo de reubicacin dinmica de la memoria. Solucin a) FALSA. No es posible, ya que las particiones de tamao fijo no presentan el problema de la fragmentacin externa. b) VERDADERA. Las superposiciones es un mtodo que se emplea cuando no existe memoria virtual para poder ejecutar procesos cuyo tamao es superior al de la memoria fsica. El programador deba definir donde comenzaban y acababan las superposiciones. c) VERDADERA. No se puede emitir una direccin de mayor nmero de bits que el permitido por el sistema.

Sistemas Operativos II

Captulo 1. Introduccin a la gestin de memoria.

d) FALSO. Las direcciones lgicas son emitidas por la CPU y slo dependen del nmero de bits que esta sea capaz de emitir. El espacio de direcciones lgicas de un proceso depende del tamao del proceso. e) VERDADERO. Si los proceso no son reubicables, no se pueden utilizar algoritmos de compactacin, ya que la ejecucin de los mismos podra ser errnea, por estar accediendo a direcciones de memoria donde no se encuentran ubicadas sus instrucciones. 8. Suponga un sistema en el que no se dispone de MMU. Existe alguna tcnica que permita ejecutar en dicho sistema un programa cuyas necesidades de memoria superen la cantidad de memoria fsica total disponible?. Solucin S, utilizando superposiciones. Dividiendo el programa en diferentes fragmentos que no deban estar todos ellos simultneamente en memoria se puede reducir significativamente la cantidad de memoria fsica que el programa necesitar. 9. Qu tipo de algoritmos se utilizan para gestionar sistemas con asignacin contigua de memoria? Qu tipo de fragmentacin se puede producir en estos sistemas? Solucin Los algoritmos que se pueden utilizar para gestionar los sistemas con asignacin contigua de memoria son: el primer ajuste (first fit), el mejor ajuste (best fit), el peor ajuste (worst fit). Sin embargo, en particiones variables de tamao fijo, no tiene sentido el uso del algoritmo del peor ajuste, ya que la fragmentacin interna que se produce no puede ser aprovechada por otro proceso (slo un proceso por particin). En la asignacin contigua con particiones de tamao variable puede aparecer la fragmentacin externa, siendo necesario el uso de algoritmos de compactacin. Mientras que en las de tamao fijo aparece la fragmentacin interna. 10. Cite tres ventajas ofrecidas por las bibliotecas de enlace dinmico cuando se las compara con las bibliotecas enlazadas estticamente para formar un fichero ejecutable. Solucin Cuando se emplea enlace dinmico los ficheros ejecutables ocuparn menos espacio, ya que no contienen el cdigo de las bibliotecas. Los procesos pueden compartir memoria. Los programas no tendrn que ser recompilados ni reenlazados para tener acceso a las mejoras de implementacin efectuadas en las bibliotecas. 11. Sea un sistema gestionado por particiones mltiples de tamao variable sin compactacin. En un instante dado, se tiene la siguiente ocupacin de la memoria:
0 1200K

S.O. (80K)

P1 (180K)

libre (400K)

P2 (100K)

libre (150K)

P3 (90K)

Libre (200K)

a) En la cola de trabajos tenemos en este orden: P4(120K), P5(200K) y P6(300K), los cuales deben

Sistemas Operativos II

Captulo 1. Introduccin a la gestin de memoria.

ser atendidos en orden FIFO. Suponiendo que no finaliza ningn proceso y tras intentar cargar en memoria todos los procesos que estn en la cola, evaluar cual de las tcnicas entre las de mejor ajuste y peor ajuste es conveniente utilizar y porque. b) Partiendo de la situacin inicial suponga que en la cola de trabajos se tiene P4(151K), P5(240K) y P6(200K), en ese orden, los cuales deben ser atendidos con criterio FIFO. Suponiendo que no finaliza ningn proceso y tras intentar cargar en memoria todos los procesos que estn en la cola, evaluar cual de las tcnicas entre las de mejor ajuste y peor ajuste es conveniente utilizar y porque. Solucin a) Es conveniente utilizar la del mejor ajuste. En el caso del peor ajuste el proceso P6 no puede se ubicado en memoria.

Você também pode gostar