TP 5-2020
TP 5-2020
TP 5-2020
Sistemas Operativos
Año 2020
Trabajo Práctico Nro 5
Tema: Gestión de Memoria
1
6 Mb, 4.5 Mb, 5 Mb, 2.8 Mb. Analizar qué huecos asignaran los algoritmos del primer, mejor
y peor ajuste. Indicar cuál de ellos aprovecha mejor la memoria con particiones fijas y
particiones variables, explicar por qué.
11) Sea un sistema gestionado con un mecanismo de participaciones variables en el que la
memoria física tiene 4200 palabras. En un instante la memoria está ocupada por 3 bloques
de código/datos de la forma:
Dirección Longitud
Inicial
1000 1000
2900 500
3400 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
dirección 0. Esta acción siempre empieza con el bloque actualmente en la dirección de memoria
más 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.
La situación de la memoria sería la siguiente:
12) Sea un sistema gestionado por particiones múltiples de tamaño variable con compactación.
En un instante dado, se tiene la siguiente ocupación de la memoria:
P1 P2 Libre
Libre 400 k
180k 100k 150k
Se utiliza la técnica 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 ningún proceso y tras intentar cargar en memoria todos los procesos que
están en la cola.
a) Indicar cuántas particiones quedan libres y de qué tamaño son.
b) Si en esta situación se aplica compactación, indicar qué proceso o procesos deberían
moverse para que el número de Kbyte 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 cómo han cambiado los registros base correspondientes al proceso o procesos que
se han movido debido a la compactación.
13) Sea un sistema de gestión de memoria basado en la técnica de la paginación. Sean tres
procedimientos que ocupan 700, 200 y 500 k respectivamente. Determine cuánta memoria
se pierde por fragmentación interna cuando estos procedimientos se cargan en memoria si
el tamaño de la página es de: 1200 k, 2500 k, 3600 k o 4700 k.
14) Suponga que un proceso emite una dirección lógica igual a 2453 y que se utiliza la técnica de
paginación, con páginas de 1024 bytes.
a) Indique el par de valores (número de página, desplazamiento) que corresponde a dicha
dirección.
b) ¿Es posible que dicha dirección lógica se traduzca en la dirección física 9322? Razónelo.
15) La tabla de páginas indica que la página 2 tiene asociado el marco de número 3. El tamaño de
la página es de 1Kb.
2
¿Cuál es la dirección física para la dirección virtual (2, 326) dada en el formato (nº pág.,
desplazamiento en la pág.)?
a) 3+326.
b) 1 x 1024+326.
c) 3 x 1024+326.
d) Se necesita conocer el tamaño del marco.
16) Suponga que un proceso emite la dirección lógica (2,18004) utilizando un modelo de gestión
de memoria basado en segmentación y el espacio de memoria física es de 64K bytes.
a) ¿A qué direcciones físicas de las siguientes (11084, 33270 y 22112), sería posible
traducir dicha dirección lógica?
b) ¿Cuál sería el resultado de traducir la dirección lógica (0,65536) en dicho sistema?
Justificar la respuesta
17) La segmentación divide el conjunto de informaciones necesarias para la ejecución de una
tarea en segmentos. Un segmento, de cualquier tamaño, representa una zona de memoria
para la tarea. Está asociado a un aspecto específico de la representación de la tarea en
memoria (código, datos, fila.) Un segmento se carga completamente en memoria en zonas
contiguas.
Sea <s,d> una dirección segmentada compuesta de un número de segmento y un
desplazamiento. Se considera una tarea utilizando 3 segmentos, cuya tabla de segmentos en
un instante dado es:
3
c) Describir brevemente lo que sucede al intentar la lectura de <0,1678>, <1,567> y <2,
1600> (estas direcciones están en el formato segmentado)
d) ¿Se conoce la dirección física de la variable de la dirección virtual <1,1060>?. Si es así
¿cuál es? sino justifique.
21) Supongamos un sistema con memoria paginada en el que las direcciones de memoria son de
16 bits, siendo los 4 bits de mayor peso el número de página. La traducción de los números
de página se hace mediante una tabla en la unidad de gestión de memoria.
En dicha tabla, en cada entrada se tiene, además del número de marco, un bit P que indica
si la página está presente (P=1) o ausente (P=0). Cuando la página está ausente, el número de
marco no tiene sentido. Si se intenta acceder a una página ausente, se produce un fallo de
página. A la vista de la tabla de página, ¿qué direcciones físicas producirían las siguientes
direcciones paginadas? (por simplicidad, todas las direcciones están en hexadecimal)
0000
1F00
3AE1
4000
7B00
801B
22) A continuación se presentan varias situaciones en las que uno o más procesos generan varias
direcciones lógicas. Indique las direcciones físicas correspondientes según cada esquema de
gestión de memoria. Si no es posible indique ERROR.
a) Considere un esquema de particiones variables. Las direcciones lógicas generadas son:
(B, 530), (A, 0,130), (C, 1056). Situación de los procesos:
Nº de (Segmento, página)
Marco
0 (0,3)
1 (1,0)
2 (2,0)
3 --
4 (1,2)
5 (0,1)
6 (0,2)
7 (1,3)
4
23) Supongamos un sistema de gestión de memoria con segmentación paginada, con páginas de
1Kb. Un proceso emite las siguientes direcciones lógicas: (1, 2487) y (1, 635). A continuación
se muestra la tabla de páginas del segmento 1. ¿Cuáles serán las direcciones físicas
correspondientes?
Segmento-1: Tabla de páginas
Página Marco
0 3
1 7
2 8
(*) Para calcular las direcciones físicas se ha de consultar los descriptores de páginas 2 y 0
de la tabla de páginas, cuyo contenido representa el marco donde se encuentra ubicada,
dicha página.