FIFO, Óptimo y LRU sobre la misma secuencia
Datos:
- Marcos de página disponibles: 3.
- Secuencia de referencias (en términos de número de página):
Referencia: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5
Marcos: [ _ , _ , _ ]
FIFO (First In, First Out):
Paso | Ref | Marcos | Fallo?
-----+-----+------------- +--------
1 | 1 | [1, _, _] | F
2 | 2 | [1, 2, _] | F
3 | 3 | [1, 2, 3] | F
4 | 4 | [4, 2, 3] | F (expulsa 1)
5 | 1 | [4, 1, 3] | F (expulsa 2)
6 | 2 | [4, 1, 2] | F (expulsa 3)
7 | 5 | [5, 1, 2] | F (expulsa 4)
8 | 1 | [5, 1, 2] | -
9 | 2 | [5, 1, 2] | -
10 | 3 | [3, 1, 2] | F (expulsa 5)
11 | 4 | [3, 4, 2] | F (expulsa 1)
12 | 5 | [3, 4, 5] | F (expulsa 2)
Total fallos FIFO = 10
Óptimo (para comparar):
Idea:
En un fallo, expulsar la página cuyo PRÓXIMO uso esté
más lejos en el futuro, o que no se vuelva a usar.
Se puede construir una tabla similar, pero indicando
en cada expulsión qué página se usará más tarde.
Actividad:
- Rellenar la tabla para Óptimo.
- Luego, comparar el número de fallos con FIFO.
- Finalmente, discutir por qué LRU se acerca a Óptimo
usando sólo información del pasado, no del futuro.
Este tipo de tabla es exactamente lo que se espera cuando se pide:
“simula un algoritmo simple de reemplazo de páginas con pseudocódigo
o trazas” en el nivel extendido de la tarea.