Relación de Ejercicios de Gestión de Memoria

Anuncio
Relación de Ejercicios de Gestión de Memoria
Fundamento de los Computadores, E.T.S.I.T. Sistemas Electrónicos
Curso 2005/2006
Ejercicio 1 Supongamos que tenemos una máquina con 16 MB de memoria principal y un esquema de
gestión de memoria virtual paginado con páginas de 8 KB. Un proceso produce la siguiente secuencia de
accesos a memoria de un proceso: 02D4B8, 02D4B9, 02D4EB, 02D86F, F0B621, F0B815, F0D963, F0B832,
F0BA23, D9D6C3, D9B1A7, D9B1A1, F0BA25, 02D4C7, 628C3A, 628A31, F0B328, D9B325, D73425.
El SO asigna al proceso 4 marcos de memoria principal. Describe el comportamiento del gestor de memoria
usando cada uno de los siguientes algoritmos de reemplazo de páginas:
1. Algoritmo FIFO
2. Algoritmo LRU
3. Algoritmo OPT
¿Cuántos fallos de página se producen con cada algoritmo?
Ejercicio 2 En un sistema informático se usa un esquema de gestión de memoria basado en la segmentación
paginada. El tamaño de una palabra de memoria es de 16 bits y la dirección lógica es también de 16 bits.
Cada dirección lógica se compone de 4 bits para identificar el segmento, 4 bits para indicar el número de
página dentro del segmento y el resto para el desplazamiento dentro de la página. En dicho sistema se ejecuta
un programa del que presentamos su tabla de segmentos y sus tablas de páginas (todos los datos aparecen
en decimal).
Segmento
0
1
2
3
Base
128
132
135
136
Lı́mite
800
612
18
1040
En la tabla anterior, la columna “Segmento” indica el número de segmento, “Base” es la dirección fı́sica
donde se encuentra la tabla de páginas de ese segmento y “Lı́mite” es el tamaño del segmento. A continuación
se muestra un volcado de memoria de las posiciones donde se encuentran las tablas de páginas.
1
Dirección
128
129
130
131
132
133
134
135
136
137
138
139
140
Marco
5
2
7
12
3
11
4
9
8
14
10
15
13
Se pide:
1. Mostrar en un esquema la distribución de páginas del programa en memoria fı́sica (marcos).
2. ¿Cuánto ha de valer el registro lı́mite de la tabla de segmentos? ¿Cuánto ha de valer el registro lı́mite
para cada tabla de páginas correspondiente a los diferentes segmentos?
3. A qué direcciones fı́sicas corresponden las siguientes direcciones lógicas:
(a) 1234
(b) 32128
(c) 13330
(d) 4607
(e) 818
(f) 819
Ejercicio 3 En un computador con una memoria principal de 32 MB se emplea un esquema de gestión de
memoria virtual paginada con páginas de 8 KB. Se produce la siguiente secuencia de accesos a memoria principal (en hexadecimal): 0483433, 0483435, 0483436, 1F21234, 1F2145D, 048347B, 1F2145D, 0C12987, 0C12654,
0C12123, 0483ABC, 0483A3C, 1F21433, 1F21434, 0C12998, 0C12889, 1AF1123, 1AF1345, 1F21789, 1AF1398,
1F21987.
Describe el comportamiento de los siguientes algoritmos de reemplazo, suponiendo que al proceso le han
sido asignados tres marcos de página:
1. FIFO (First In First Out)
2. LRU (Least Recently Used)
Ejercicio 4 Un sistema operativo implementa como método de gestión de memoria la asignación estática
de memoria particionada. En un instante determinado la tabla de descripción de particiones se encuentra en
el siguiente estado:
2
Partición
1
2
3
4
Base
0 KB
200 KB
300 KB
650 KB
Tamaño
200 KB
100 KB
350 KB
400 KB
Estado
LIBRE
LIBRE
ASIGNADA
ASIGNADA
El gestor de memoria recibe, en este orden, las siguientes peticiones de diversos procesos: 50KB, 200KB,
100 KB, 70 KB, 400 KB, 200KB, 95 KB. Suponiendo que cada proceso permanece en memoria un máximo
de 50 ms.:
1. Describir el comportamiento del sistema si se sigue el algoritmo de asignación first-fit.
2. Describir el comportamiento el sistema si se sigue el algoritmo de asignación best-fit.
3. Calcula la fragmentación media interna en cada uno de los casos anteriores. ¿Qué ocurre con la
fragmentación externa?
Ejercicio 5 En una máquina con 1MB de memoria principal se usa un esquema de gestión de memoria
basado en particionamiento dinámico. El sistema operativo ocupa los primeros 124 KB de la memoria y el
resto está disponible para los procesos de usuario. La siguiente tabla muestra información de una serie del
procesos que han de ser ejecutados (los tiempos están en segundos).
Proceso
A
B
C
D
E
F
G
Llegada
0
3
6
10
12
15
17
Duración
15
5
10
7
2
10
3
Tamaño
100 KB
500 KB
200 KB
50 KB
460 KB
300 KB
250 KB
Cuando un proceso intenta entrar en el sistema pero no existe memoria para él el sistema operativo lo
anunciará al usuario con un error y no se ejecutará el proceso. Simula la evolución de la memoria usando los
algoritmos de asignación:
1. Mejor ajuste (best-fit).
2. Peor ajuste (worst-fit).
3. Primer ajuste (first-fit) suponiendo que los huecos libres se buscan en el orden en que se encuentran en
memoria.
Para cada algoritmo indica el número de procesos que se han podido ejecutar y el número de rechazos de
procesos debido a la fragmentación externa.
3
Descargar