0x2000
0x4000
Pila de P1
Pila de P2
Cdigo de P1 y P2
Datos de P1
Datos de P2
(Se pueden utilizar las direcciones lgicas que se desee, procurando realizar una asignacin
razonable: cada regin -cdigo, datos o pila- debe ocupar un segmento o un rango contiguo de
direcciones lgicas en el caso de la paginacin).
Problema 4.
Un procesador de 32 bits utiliza tablas de pginas de dos niveles. En este sistema, cada tabla
de pginas (tanto de primer nivel como de segundo nivel) ocupa una pgina completa y contiene
1024 entradas. Se desea cargar en memoria un proceso y conseguir que su espacio lgico de
direcciones sea el que aparece en la tabla 1.
Considerando que la lista de marcos libres es 0x15A0, 0x500, 0x4FF, 0x88, 0x400, 0x501,
0x2310 y 0x1FCA, mostrar cmo quedaran alojados en memoria fsica los datos del proceso y
29 de enero de 2016
1 de 25
SSOO
las tablas de pginas necesarias, as como el contenido de dichas tablas de pginas (por cada
entrada, especificar el n de marco de pgina y el bit de vlido).
Tabla 1: El espacio lgico de direcciones del proceso.
Direccin lgica
de comienzo
0x1000
0x4000
0xFFFF.F000
Tamao
(en bytes)
0x0432
0x1F10
0x1000
Problema 5.
La instruccin movl -4(%ebp), %eax permite transferir el contenido (4 bytes) de la direccin
de memoria ebp - 4 (donde ebp es el contenido del registro base de pila del procesador) al
registro de propsito general eax. Sabiendo que la instruccin completa ocupa 3 bytes, cul
sera el mnimo nmero de marcos que tendra que tener asignado un proceso para poder
garantizar que ser capaz de ejecutarla?
Problema 6.
Un sistema utiliza paginacin para implementar memoria virtual. Sabiendo que la tasa de
aciertos del TLB es de 0'98, que el tiempo de acceso a memoria (con la paginacin desactivada)
es de 50 ns, que el tiempo medio de acceso a memoria con la memoria virtual activada es de 54
ns., que el 30 % de los fallos de pgina requieren la escritura de la pgina a ser reemplazada y
que la probabilidad de un fallo de pgina es de 810 -8, cul es el tiempo de acceso al TLB del
procesador? Datos adicionales: tratar un fallo de pgina requiere 10 ms. o 21 ms., dependiendo
de si es necesario volcar a disco la pgina a ser reemplazada o no.
Problema 7.
Si la lista de marcos de pgina de un sistema operativo es la que aparece en la tabla 2 y se
utiliza el algoritmo del reloj (el que tiene en cuenta el bit de modificado) para decidir sobre el
reemplazo de pginas, justificar cmo se trataran los tres primeros fallos de pgina, mostrando
cmo quedara finalmente la lista de marcos.
Tabla 2
Marco de pg.
Pgina
Accedida
Modificada
0
8
1
0
1
1
1
0
2
0
1
1
ltima
3
12
0
1
4
22
1
0
5
23
0
0
6
243
1
1
Nota: supngase que las tres pginas solicitadas son accedidas y modificadas inmediatamente
(es decir, cada una antes del siguiente fallo de pgina).
Problema 8.
Sabiendo que el sistema utiliza pginas de 4KB, calcular el nmero de fallos de pgina que
producira el proceso P1 si generase los accesos a memoria 0x7000, 0x35a3, 0x9123, 0x8fff,
0x5000, 0x9124, 0x7000, 0x35a4, 0x8ffe, 0x5001, 0x8ffd, 0x9125, 0x35a5, y se utilizase la
estrategia de asignacin de marcos de pgina mediante el conjunto de trabajo con un tamao de
ventana de 4.
Resulta adecuado este tamao de ventana en este caso concreto? Justificar la respuesta.
Nota: Suponer que inicialmente ninguna de las pginas reside en memoria.
29 de enero de 2016
2 de 25
SSOO
Proceso
1
2
3
4
Tamao
(en Kb)
212
417
112
426
Tabla 4
Tabla 3
Considerar el modelo de mltiples particiones, tanto con particiones fijas como con
particiones flexibles.
Solucin: Primer ajuste: fijas = P1 en H2, P2 en H5, P3 en H3, P4 debe esperar; variables = P1
en H2, P2 en H5, P3 en H2, P4 debe esperar.
Mejor ajuste: fijas = P1 en H4, P2 en H2, P3 en H3, P4 en H5; variables = P1 en H4, P2
en H2, P3 en H3, P4 en H5
Peor ajuste: fijas = P1 en H5, P2 en H2, P3 en H4, P4 debe esperar; variables = P1 en
H5, P2 en H2, P3 en H5, P4 debe esperar.
Problema 3.
Considerando la TdS que se muestra en la tabla 5. Cules
son las direcciones fsicas para las siguientes direcciones
lgicas?
1. (0, 430)
2. (1, 10)
3. (1, 100)
4. (2, 500)
5. (3, 400)
6. (4, 112)
Segmento
0
1
2
3
4
Base
219
2300
90
1327
1952
Longitud
600
14
100
580
96
Tabla 5
29 de enero de 2016
3 de 25
SSOO
Problema 4.
Sea un sistema con memoria paginada que disponga de registros asociativos para contener las
entradas de la TdP usadas ms recientemente. Si la TdP se mantiene en memoria y el tiempo de
acceso a la memoria es de 1 s,
cul es el tiempo efectivo de acceso si en el 95% de las referencias a memoria la entrada
de la TdP se encuentra en los registros asociativos?, y
cul sera el tiempo efectivo de acceso si la tasa de aciertos fuera del 50%?
(Suponer en ambos casos que el tiempo necesario para consultar los registros es despreciable.)
Solucin: 1- 1,05 s; 2- 1,5 s.
Problema 5.
Considerando un sistema con 32 Kb de memoria fsica, que utiliza paginacin y sabiendo que el
sistema dispone de 8 tramas, contestar a las siguientes cuestiones:
1. Cul es el tamao de pgina?
2. Considerando la tabla 6. Cuntos bits significativos hay en una Pgina Trama
direccin lgica?
0
7
3. Y en una fsica?
1
2
4. Utilizando para la traduccin la TdP que se muestra en la tabla 6,
2
1
cules son las direcciones fsicas que se generaran para las
siguientes direcciones lgicas: 0x1A00, 0x200F, 0x3F17, 0x0300.
3
3
Solucin: 1- 4096 palabras, 2- 14 bits, 3- 15 bits, 4- {0x1A00 - 0x2A00,
0x200F - 0x100F, 0x3F17 - 0x3F17, 0x0300 - 0x7300
Tabla 6
Problema 6.
Suponer un sistema con paginacin con demanda en el que la TdP se mantiene en registros. El
sistema tarda 8 ms en servir un fallo de pgina si hay una trama libre o si la pgina a reemplazar
no est modificada, y 20 ms si la pgina reemplazada est modificada. El tiempo de acceso a
memoria es de 100 ns.
Si es necesario reemplazar una pgina modificada en el 70% de los fallos de pgina, cul es
la mxima tasa de fallos de pgina para lograr un tiempo efectivo de acceso inferior a 200 ns?
Solucin: 6,110-6
Problema 7.
Considerando la siguiente secuencia de referencias a memoria de un programa de 460 bytes:
0x10, 0x11, 0x104, 0x170, 0x73, 0x309, 0x185, 0x245, 0x246, 0x434, 0x458, 0x364
a) Dar la cadena de referencia, sabiendo que el tamao de pgina es de 0x100 bytes.
b) Encontrar el nmero de fallos de pgina para la cadena de referencia del apartado anterior
para los siguientes algoritmos (sabiendo que el proceso tiene asignados 0x200 bytes de
memoria fsica): ptimo, FIFO y UMR.
Solucin: 1- {0, 1, 0, 3, 1, 2, 4, 3
2- ptimo = 5, FIFO = 6, UMR = 7
Problema 8.
Sea un sistema que emplea un modelo de memoria combinado en el que se utiliza paginacin por
demanda para implementar memoria virtual. En un momento dado se est ejecutando un proceso
que tiene asociadas la TdS y la TdP de las tablas 7 y 8, respectivamente.
29 de enero de 2016
4 de 25
SSOO
Segmento
0x0
0x1
0x2
Base
0xB000
0x3000
0x0000
Lmite
0x1000
0x4A00
0x3000
Tabla 7: TdS
segmento no vlido
acceso no vlido a segmento
desplazamiento excede lmite del segmento
fallo de pgina
Tabla 9: Excepciones
Pgina
Trama
0x0
0x1
0x2
0x3
...
0xB
...
0xA
0x8
0x0
0x5
Bit de
presen.
1
0
0
1
0x2
a)
b)
c)
d)
e)
f)
g)
h)
i)
Direccin lgica
(0x1, 0x005A)
(0x0, 0x0FFF)
(0x1, 0x4A00)
(0x2, 0x257C)
(0x2, 0x0F8A)
(0x0, 0x0010)
(0x2, 0x15DD)
(0x1, 0x0AAA)
(0x3, 0x0000)
Tipo de acceso
lectura
lectura
lectura
lectura
lectura
ejecucin
escritura
ejecucin
lectura
Cada elemento de la lista contiene dos campos: direccin de comienzo del hueco y tamao del mismo, en ese
orden.
1
29 de enero de 2016
5 de 25
SSOO
Problema 10.
El ncleo de un S.O. utiliza el modelo segmentado para
gestionar la memoria del computador. Considerando la
tabla de segmentos de la tabla 10, traducir las siguientes
direcciones lgicas a fsicas indicando, en caso de que no
sea posible traducirlas, por qu.
a) (0x1, 0x430)
b) (0x3, 0x0)
c) (0x0, 0x1FF0)
d) (0x1, 0x1000)
Segmento
0
1
2
Base
0x01000
0x10000
0x40000
Longitud
0x2000
0x1000
0x8000
Tabla 10
Pgina
0
1
2
Trama
0x0007
0x0F00
0x0040
Tabla 11
29 de enero de 2016
6 de 25
SSOO
Problema 15.
Sea un sistema que emplea un modelo de memoria combinado en el que se utiliza paginacin por
demanda para implementar memoria virtual. En un momento dado se est ejecutando un proceso
que tiene asociadas la TdS y la TdP de la tablas 12 y 13, respectivamente.
Segmento
0x0
0x1
0x2
Base
0x0000
0xA000
0x6000
Lmite
0x4000
0xA000
0x2000
segmento no vlido
acceso no vlido a segmento
desplazamiento excede lmite del segmento
fallo de pgina
Tabla 14: Excepciones
Pgina
Trama
0x0
0x1
0x2
0x3
...
0x6
...
0x1
0xA
0xF
0x3
Bit de
presen.
1
0
0
1
0x0
a)
b)
c)
d)
e)
f)
g)
Direccin lgica
(0x1, 0x005A)
(0x3, 0x0FFF)
(0x2, 0x0000)
(0x2, 0x257C)
(0x0, 0x257C)
(0x0, 0x0010)
(0x0, 0x35DD)
Tipo de acceso
escritura
lectura
lectura
lectura
lectura
ejecucin
escritura
29 de enero de 2016
7 de 25
SSOO
(quedan 0x10000). Con el mejor ajuste: como en el anterior, en este caso. Con el
peor ajuste: el cdigo se aloja en el segundo hueco (quedan 0x60000), no quedando
ningn hueco que pueda alojar los datos, por lo que la creacin del proceso debera
esperar.
Problema 17.
En un sistema con paginacin, el tiempo de acceso al TLB es de 1 ns, mientras que el tiempo de
acceso a memoria con la paginacin desactivada es de 60 ns. Si la tasa de aciertos del TLB es de
0'995, cul es el tiempo efectivo de acceso a memoria?
Solucin: 61'3 ns.
Problema 18.
Cul es la tasa de fallos de pgina que se le debe exigir a un sistema para conseguir un aumento
del tiempo efectivo de acceso inferior al 10%? Datos: el tiempo de acceso a memoria cuando no
se produce un fallo de pgina es es de 80 ns., y cuando s se produce es de 10 ms.
Solucin: menor que 810-7.
Problema 19.
Resolver el problema anterior considerando que el tiempo de acceso a memoria cuando se
produce un fallo de pgina depende de si es necesario reemplazar una pgina modificada (20 ms)
o no (10 ms) y sabiendo que el 75 % de los fallos de pgina no requieren que se escriba en disco
la pgina a modificar.
Solucin: menor que 6'410-7.
Problema 20.
Supngase que se tiene un computador con una instruccin de 3 direcciones para sumar el
contenido de dos posiciones de memoria y almacenar el resultado en una tercera posicin. En
ensamblador, la instruccin se asemejara a:
ADD A, B, C
/* (A) + (B) (C) */
Si la instruccin ocupa tres palabras y si todas las direcciones son directas (es decir, la
direccin efectiva forma parte de la propia instruccin), cul sera el nmero mnimo de marcos
que necesita esta instruccin para garantizar su ejecucin correcta. Explicar la respuesta.
Solucin: El peor caso se da cuando el cdigo (3 palabras) est almacenado entre dos
pginas, y cada uno de los dos operandos y el destino estn en pginas diferentes (3
en total). Por lo tanto, para estar seguros son necesarios 5 marcos (los dos del
cdigo y los otros 3).
Problema 21.
En un sistema con paginacin por demanda se crea un proceso que, al iniciar su ejecucin,
genera la siguiente cadena de referencias: 1, 2, 8, 9, 2, 8, 3, 8, 2, 8, 2, 5, 8, 2, 9, 2, 8.
1. Si al proceso se le asignan 4 marcos de pgina, cul ser el nmero de fallos de
pgina utilizando los algoritmos de reemplazo de pginas a) ptimo y b) FIFO?
2.
29 de enero de 2016
8 de 25
SSOO
Problema 22.
En un sistema, en un momento dado, se estn ejecutando 2 procesos: P 1 y P2. La tabla 15 muestra
la asignacin de la memoria fsica en ese momento y la tabla 16 describe el espacio lgico de
direcciones de cada proceso.
Rango de direcciones fsicas
0x0000-0x1FFF
0x3000-0x3FFF
0x4000-0x4FFF
0x5000-0x6FFF
0x7000-0x7FFF
0xA000-0xBFFF
0xE000-0xEFFF
Descripcin
Datos compartidos por P1 y P2
Cdigo de P1
Pila de P1
Cdigo de P2
Pila de P2
Datos de P1
Datos de P2
Proceso P1
Rango de
direcciones lgicas
0x1000-0x1FFF
0x2000-0x3FFF
0x4000-0x5FFF
0x7000-0x7FFF
Descripcin
Cdigo privado
Datos privados
Datos compartidos
con P2
Pila (privada)
Proceso P2
Rango de
direcciones lgicas
0x1000-0x2FFF
0x3000-0x3FFF
0x5000-0x6FFF
0x7000-0x7FFF
Descripcin
Cdigo privado
Datos privados
Datos compartidos
con P1
Pila (privada)
Tomando como ejemplo la tabla 17, que muestra las dos primeras entradas de la tabla de
pginas de P1, y sabiendo que el tamao de pgina es de 4 Kb., se pide: mostrar cul debe ser el
contenido de la tabla de pginas de cada proceso para que pueda acceder exclusivamente a la
memoria fsica que tiene asignada. (Considerar tablas de pginas de 8 entradas.) Razonar la
respuesta.
N de entrada en la tabla Trama Bit de vlido
0 0x0
0
1 0x3
1
...
Tabla 17: Tabla de pginas del proceso P1.
Solucin: TdP de P13: {0, 0}, {3, 1}, {A, 1}, {B, 1}, {0, 1}, {1, 1}, {lo que sea, 0}, {4, 1}
TdP de P2: {0, 0}, {5, 1}, {6, 1}, {E, 1}, {lo que sea, 0}, {0, 1}, {1, 1}, {7, 1}
Problema 23.
Sea un sistema que emplea un modelo de memoria combinado en el que se utiliza paginacin por
demanda para implementar memoria virtual. En un momento dado se est ejecutando un proceso
que tiene asociadas la TdS y la TdP de las tablas 18 y 19, respectivamente.
Segmento
3
Base
Lmite
29 de enero de 2016
9 de 25
SSOO
0x0
0x1
0x2
0xA000
0xB000
0x0000
0x4000
0x1000
0x2000
0
1
1
0
1
0
1
0
0
segmento no vlido
acceso no vlido a segmento
desplazamiento excede lmite del segmento
fallo de pgina
Tabla 20: Excepciones
Pgina
Trama
0x0
...
0x4
...
0xA
0xB
0x4
Bit de
presen.
0
0x1
0xA
0x0
1
1
Se pide que, para cada una de las direcciones lgicas indicadas a continuacin, se calcule su
direccin lineal y su direccin fsica. En caso de producirse alguna excepcin indicar cul se
producira y por qu.
a)
b)
c)
d)
e)
Direccin lgica
(0x1, 0x1000)
(0x1, 0x100)
(0x2, 0x0)
(0x2, 0x400)
(0x0, 0x100)
Tipo de acceso
lectura
escritura
ejecucin
lectura
ejecucin
0
3
0
1
1
20
1
0
ltima
2
5
1
1
3
22
0
1
4
6
1
1
5
7
1
0
6
1
0
1
3
22
1
1
4
6
1
1
5
7
1
0
6
1
1
1
Tabla 21
Marco de pg.
Pgina
Accedida
Modificada
0
3
1
0
1
20
1
0
2
5
1
1
ltima
Tabla 22
29 de enero de 2016
10 de 25
SSOO
Solucin: Primera tabla. Se busca A=0 y M=0, no se encuentra. Se busca A=0 y M=1,
poniendo A=0 si A=1, se pone A a 0 en el marco 2 y se encuentra el marco 3 con
A=0 y M=1. Se selecciona el marco 3 (habr que volcar su contenido al disco antes
de leer la pgina solicitada).
Segunda tabla. Se busca A=0 y M=0, no se encuentra. Se busca A=0 y M=1, se
ponen a 0 todos los bits A (se completa la vuelta sin encontrar ninguno). Se busca
A=0 y M=0 de nuevo, esta vez se encuentra el marco 5, que puede ser rellenado
directamente.
Problema 25.
El estado de parte de la memoria fsica de un sistema de 32 bits que est utilizando paginacin
es el que aparece en la tabla.
Regin de memoria
Dir. de inicio
Tamao
Cdigo de P1 y P2
Datos de P1
Datos de P2
Pila de P1
Pila de P2
Respuesta
1. Tamaos de pgina.
Puesto que cada entrada en tabla de pginas de un proceso garantiza un determinado tipo de
acceso (ej: slo lectura) a todo el contenido de una pgina, no es posible almacer en el mismo
marco de pgina informacin correspondiente a dos procesos distintos (salvo que ambos
compartan dicha informacin) y tampoco es posible almacenar datos con diferente tipo de
acceso (ej: cdigo -slo lectura- con datos -lectura y escritura-). Por lo tanto, el tamao de
pgina ms grande ser aqul que respete esta separacin. Observando la disposicin de la
informacin en la memoria fsica, se puede ver que los datos de P1 estn alojados a partir de la
direccin 0x280000 y que el cdigo de P1 y P2 lo est a partir de la 0x300000. Por lo tanto, las
pginas no pueden ser mayores de 0x80000. Podemos comprobar que utilizando pginas de este
tamao es posible aislar cada regin en un conjunto propio de marcos de pgina, por lo cual
ste es el tamao mximo: 0x80000 (219 = 512 KB), y ser posible utilizar pginas de cualquier
tamao inferior a ste que sea potencia de 2, por ejemplo 256 KB, 128 KB, 64 KB...
2. Construccin de las tablas de pginas
Puesto que las pginas son de 64 KB (0x10000 bytes) y el cdigo comienza en la direccin
lgica 0x100000, la primera entrada vlida en la tabla de pginas de P1 ser la 0x10. Puesto
que la primera pgina de cdigo est almacenada en el marco de pgina 0x30, ste ser el
contenido de esta entrada, que evidentemente tendr el bit de vlido a 1. Las entradas de la 0 a
29 de enero de 2016
11 de 25
SSOO
la 0xF tendrn el bit de vlido a 1. Como el cdigo tiene una longitud de 0x38fa0 tendr que
ocupar 4 pginas y, por lo tanto, tambin sern vlidas las pginas 0x11, 0x12 y 0x13. Puesto
que el cdigo est almacenado en marcos de pgina contiguos, el contenido de dichas entradas
ser 0x31, 0x32 y 0x33.
Siguiendo este mismo proceso para las dems regiones de P1 y P2, se obtienen las siguientes
tablas de pginas.
P1
P2
Entrada Marco V
Entrada Marco V
0x0
0x0
...
...
0x10
0x30
0x10
0x30
0x11
0x31
0x11
0x31
0x12
0x32
0x12
0x32
0x13
0x33
0x13
0x33
0x14
0x14
...
...
0xA0
0xA1
0xA1
...
...
0xFFF
0x1000
0x1000
...
...
0xA0
0xFFF
0x28
0xF
0x10
0xFF
3. Clculo de la fragmentacin
La fragmentacin interna se debe al espacio asignado a un proceso y que ste no utiliza. Por
lo tanto, para la regin de cdigo de P1 y P2, con un tamao de pgina de 64 KB hay asignados
64 KB * 4 marcos = 0x40000. De ellos, el cdigo ocupa 0x38fa0, por lo que se desaprovechan
0x7060 bytes. Del mismo modo, con los datos de P1 se desaprovechan 0x10000 - 0x4f00 =
0xB100 y con los de P2 0x10000 - 0x8ac4 = 0x753C. Puesto que no se conoce la zona de la pila
realmente utilizada (sera necesario conocer el puntero de pila de los procesos), no ser tenida
en cuenta y, por lo tanto, la fragmentacin interna ser 0x7060 + 0xB100 + 0x753C = 0x1969C
bytes. (Ntese que slo hay una copia del cdigo en memoria fsica, por lo que slo se produce
la fragmentacin una vez).
Tambin se podra considerar como fragmentacin interna el espacio ocupado por las tablas
de pginas del proceso. Utilizando el registro lmite de la tabla de pginas, sera posible utilizar
nicamente 0x1000 entradas por proceso (de la 0x0 a la 0xFFF). Si cada entrada ocupase 32
bits, que es el ancho de palabra del procesador, el espacio ocupado por cada tabla sera sera
0x20 * 0x1000 = 0x20000, es decir, dos marcos de pgina.
Finalmente, la fragmentacin externa no existe con la paginacin, ya que cualquier marco de
pgina puede ser utilizado para almacenar cualquier pgina.
Problema 26.
Un sistema que utiliza el algoritmo del reloj para seleccionar las pginas a ser reemplazadas se
halla en el estado que muestra la tabla cuando se produce el primer fallo de pgina. Sabiendo que
el algoritmo tiene en cuenta el bit de modificado, qu pginas seran reemplazadas durante el
29 de enero de 2016
12 de 25
SSOO
tratamiento del fallo de pgina indicado y de los dos siguientes? (Suponer que cuando se produce
el 2 fallo de pgina la primera pgina ha sido accedida, pero no modificada; que cuando se
produce el 3er fallo la segunda pgina ha sido modificada y que ninguna otra pgina es accedida
ni modificada en esos intervalos de tiempo).
Marco de pg.
Nmero de pg.
23
12
183
23223
32
64
90
8388
982
ltima
Respuesta
Cuando se produce el primer fallo de pgina se inicia el primer recorrido del algoritmo del
reloj, que busca pginas que no hayan sido accedidas ni modificadas (A=0, M=0). La bsqueda
se inicia en el marco 4, pues el ltimo reemplazo se haba realizado en el marco 3. La primera
pgina en este estado es la 8388, que reside en el marco 8, por lo que es reemplazada. Al cargar
la nueva pgina se ponen ambos bits (A y M) a 0, pues la nueva pgina no ha sido accedida ni
modificada todava.
Mientras se ejecutan los procesos hasta que se produce el segundo fallo de pgina, el
enunciado especifica que la nica pgina accedida es la que se acaba de cargar (la que reside
en el marco 8) y que es accedida, pero no modificada. Por lo tanto, cuando se produce el 2
fallo de pgina, el estado del sistema es el etiquetado como A2 (antes del 2 reemplazo). En este
caso, el primer recorrido buscando A= 0 y M=0 finaliza sin xito. Por lo tanto, se inicia un
nuevo barrido buscando pginas con A=0 y poniendo a 0 los bits de aqullas que lo tienen a 1.
La primera pgina que tiene este A a 0 es la que est en el marco 5 y, por lo tanto, es
reemplazada. Tras cargar la nueva pgina y poner sus bits a 0, el estado es el etiquetado como
D2 (despus del 2 reemplazo).
Cuando se produce el tercer fallo de pgina, la nica modificacin con respecto a D2 es que
la pgina reemplazada (marco 5) ha sido accedida y modificada, tal y como se muestra en A3.
Se inicia la bsqueda en el marco 5 de pginas con estado A=0 y M=0, encontrndose en
primer lugar la pgina alojada en el marco 9, que es reemplada.
A2
D2
A3
Marco Pg. A M
Marco Pg. A M
Marco Pg. A M
1 0
0 0
0 0
1 1
0 1
0 1
1 1
0 1
0 1
29 de enero de 2016
13 de 25
SSOO
A2
D2
A3
1 1
0 1
0 1
1 0
0 0
0 0
0 1
0 0 lt
1 1 lt
0 1
0 1
0 1
0 1
0 1
0 1
1 0 lt.
1 0
1 0
1 0
0 0
0 0
Problema 27.
Cul debera ser la tasa de aciertos del TLB de un sistema que utiliza paginacin para que el
tiempo efectivo de acceso a memoria fuera solamente un 1% peor que el tiempo de acceso a
memoria con la paginacin desactivada, que es de 4 ns?
DATO: el tiempo de acceso al TLB es de 0'1 ns.
Respuesta
El tiempo efectivo de acceso a memoria cuando la paginacin est activada se puede
calcular mediante la siguiente frmula:
t eam =T A t TLB t m 1T A t TLB 2t m
donde team es el tiempo efectivo de acceso a memoria, TA es la tasa de aciertos del TLB, tTLB
es el tiempo de acceso al TLB y tm es el tiempo de acceso a memoria con la paginacin
desactivada. El enunciado del problema pregunta por la tasa de aciertos del TLB, dando como
datos las otras variables de la ecuacin, por lo que simplemente hay que sustituir, teniendo en
cuenta que el tiempo efectivo de acceso a memoria debera ser 1 % peor que el tiempo de acceso
a memoria, que es de 4 ns, por lo que deber ser de 4 ns (1 + 0,01) = 4,04 ns.
Sustituyendo y despejando el valor de la tasa de aciertos se obtiene una tasa de 1,015.
Lgicamente, la tasa de aciertos no puede ser mayor que uno, por lo que hay que concluir que
sera imposible conseguir un tiempo efectivo de acceso a memoria tan bajo cuando el tiempo de
acceso al TLB es tan parecido al tiempo de acceso a memoria.
Problema 28.
Un sistema multiprogramado tiene en memoria principal dos procesos (P1 y P2), tal y como
muestra la ilustracin 1.
0xA2000
Datos de P1
Cdigo P1 y P2
(compartido, slo lectura)
0x1000
0x8800
Ilustracin 1. (El dibujo no est a escala).
Pila de P2
0xA0000
0xAB000
Pila de P1
0xA8000
Datos de P2
0xB4000
0xBC000
29 de enero de 2016
14 de 25
SSOO
Respuesta
1. Segmentacin. El motivo es que la regin de cdigo comienza en la direccin 0x8800,
justo a continuacin de la regin de datos de P1. Utilizando paginacin sera imposible
permitir el acceso de P2 al comienzo del cdigo e impedir que accediese al final de los
datos de P1, ya que ambas regionen comparten el marco de pgina que comienza en la
direccin 0x8000. En cambio, utilizando segmentacin no surge ningn problema, ya que
los segmentos pueden comenzar en cualquier direccin fsica y tener la longitud
apropiada, tal y como se ver en la segunda parte.
2. Las estructuras de datos se muestran en las tablas 23 y 24. A modo de ejemplo, la entrada
0 de la tabla de segmentos de P1 debera contener como base la direccin 0x8800, que es
donde comienza la zoona de cdigo. Como lmite debe tener 0xA0000 0x8800 =
0x97800, que es el tamao de dicha zona. Finalmente, para permitir la ejecucin y la
lectura, los bits LEJ (Lectura, Escritura y eJecucin) deberan contener los valores 101,
respectivamente.
Segmen
to
Base
Lmite
LEJ
0x8800
0x97800
101
0x1000
0x7800
0xAB000
0x9000
Base
Lmite
0x8800
0x97800
101
110
0xB4000
0x8000
110
110
0xA2000
0x6000
110
Segmen
to
LEJ
Problema 29.
Un sistema utiliza tablas de pginas de dos niveles y, en un instante de su ejecucin, las tablas
de pginas del proceso P1 son las que aparecen a continuacin. Sabiendo que cada pgina ocupa
4 KB, que las entradas blancas de las tablas de pginas de segundo nivel apuntan a pginas de
cdigo, que las grises a datos, que las oscuras a la pila y que las entradas que no aparecen en las
tablas tienen el bit de vlido (V) a 0,
1. cul sera el espacio lgico de direcciones de P1?
2. en qu marcos de pgina estaran alojados los datos?
3. en qu direccin fsica estara alojada la direccin lgica 0x400301?
Marco
Marco
0 0x3A108 1
0 0x00333 1
1 0x00A10 1
1 0x00311 1
... ...
... ...
0x3FF 0xA0000 1
29 de enero de 2016
15 de 25
SSOO
Marco
0 0x00333 0
Marco
... ...
V
0
1 0x88A00 1
0x3FE 0xD30B2 1
2 0x000BF 1
0x3FF 0xD30B0 1
3 0x00001 1
4 0x54A12 1
... ...
0x3FD 0x01BA0 1
0x3FE 0x110B2 1
0x3FF 0x110B3 1
Tabla 27: TdP de 2 nivel
alojada en el marco
0x3A108
Respuesta
1. Cdigo: dado que el enunciado indica que las entradas de segundo nivel que apuntan a
marcos que contienen cdigo son las que aparecen en blanco, stas son las entradas de la 0 a
la 4, ambas inclusive (que la entrada 0 tenga el bit de vlido a 0 simplemente indica que la
pgina no est en memoria principal).
Qu direcciones lgicas se corresponden con estas entradas? Teniendo en cuenta que la
tabla de pginas (TdP) que las contiene se halla alojada en el marco 0x3a108, la entrada en
la TdP de 1er nivel que hace referencia a ella ser la 0. Por lo tanto, la primera pgina de
cdigo tendr como ndice de 1er nivel 0 y como ndice de 2 nivel 0 tambin, con lo que se
extender en el rango de direcciones lgicas que va de la 0x00000000 a la 0x00000fff. 4 El
resto de pginas vienen a continuacin, cambiando el ndice de segundo nivel por 1, 2...; por
lo tanto, el rango de direcciones lgicas ocupado por el cdigo es: 0x00000000-0x00004fff.
Datos: Siguiendo el mismo razonamiento para las entradas de datos de la TdP alojada en el
marco 0x3a108, tendramos el rango entre 0x003fd000 y 0x003ffffff.
Dado que la zona de datos tambin incluye las 2 primeras entradas de la TdP alojada en el
marco 0x00a10 y teniendo en cuenta que la entrada en la TdP de primer nivel que apunta
hacia ella es la 1, tendramos que estas pginas se corresponderan con las direcciones
lgicas que empezaran en la direccin 0000 0000 0100 0000 0000 0000 0000 0000 binaria, 5
es decir, en la 0x00400000 y que llegaran hasta la 0x00401fff.
Por tanto, el rango completo de la zona de datos es: 0x003fd000-0x00401fff.
Pila: para las dos pginas de la pila, el ndice de primer nivel ser 0x3ff (es esta entrada la
que apunta a la TdP alojada en el marco 0xa0000) y sus ndices de segundo nivel sern 0x3fe
y 0x3ff, respectivamente. Por lo tanto, el rango de direcciones lgicas ser 0xffffe0000xffffffff.
Resumiendo, el espacio lgico ser:
Cdigo: 0x00000000-0x00004fff
Datos: 0x003fd000-0x00401fff
Pila:
0xffffe000-0xffffffff
Claramente las direcciones lgicas son de 32 bits, pues hay 0x400 (210)entradas en cada TdP, lo cual significa
10 bits para el ndice de primer nivel, 10 bits para el de segundo y, puesto que en el enunciado se indica que el
tamao de pgina es 4 KB (212), 12 bits para el desplazamiento, 10+10+12=32 bits en total.
5
ndice de primer nivel = 1, ndice de primer nivel para la primera pgina = 0.
4
29 de enero de 2016
16 de 25
SSOO
2. Teniendo en cuenta que las entradas en las tablas de pginas de segundo nivel contienen
directamente el nmero de marco de pgina en el que se halla alojada la pgina
correspondiente, los marcos de pgina seran: 0x0a1ba0, 0x110b2, 0x110b3, 0x00333 y
0x00311.
3. La direccin lgica 0x00400301 es, en binario, 0000 0000 0100 0000 0000 0011 0000 0001.
Los 10 bits ms significativos son 00 0000 0001, por lo que la entrada en la TdP de primer
nivel ser la 1. Los siguientes 10 bits son ceros, por lo que el ndice en la TdP de segundo
nivel ser el 0. Por lo tanto, para hallar la direccin fsica se utilizar la entrada 0 de la TdP
a la que apunte la entrada 1 de la TdP de primer nivel, que es la alojada en el marco
0x00a10. La entrada 0 de esta TdP contiene el nmero de marco 0x00333, por lo que la
direccin fsica ser 0x00333301, ya que los 12 bits menos significativos de la direccin
fsica son los 12 bits de desplazamiento de la direccin lgica, que no sufren modificacin
alguna.
Problema 30.
Un sistema multiprogramado tiene en memoria principal dos procesos (P1 y P2), tal y como
muestra el dibujo 1.
0xD000
Datos P2 Cdigo P1 y P2
(0-0xFFF)
(slo lectura)
Datos P2
(0x10000x3FFF)
Pila de P1
0x1E000
Datos P1
Pila P2
0x1000
0x2000
0x8000
0xB000
0x10000
0x20000
0x24000
Dibujo 1. El grfico no est a escala. Los valores numricos entre parntesis indican desplazamientos relativos
al comienzo de la seccin.
Respuesta
1. Paginacin. Efectivamente, puesto que la zona de datos de P2 est dividida en dos zonas de
memoria fsica separadas y el enunciado especifica que debe ocupar un solo segmento, no es
posible utilizar segmentacin. Sin embargo, todas las direcciones tanto fsicas como lgicas
estn alineadas al tamao de pgina, que es 0x1000 bytes (4 KB).
2. Dado que el proceso de construccin de las tablas de pginas es repetitivo, se ilustrar el
proceso con la zona de cdigo de P1. Las direcciones lgicas de la seccin de cdigo
comienzan en la direccin 0x1000. Dado que el tamao de pgina es 4 KB (es decir 2 12), el
desplazamiento estar formado por los 12 bits menos significativos. Por lo tanto, el nmero
de la primera pgina de cdigo ser el 1. Dicha pgina estar almacenada en el marco 2
(aplicando el mismo proceso a la direccin fsica de comienzo de la zona de cdigo, 0x2000).
El cdigo ocupa desde la direccin 0x2000 a la 0x7fff, es decir, 6 marcos de pgina, del 2 al
7 (ambos inclusive). Por tanto, la seccin de cdigo estar formada por las pginas 1 a 6
29 de enero de 2016
17 de 25
SSOO
(ambas inclusive). Con esta informacin es posible rellenar la primera parte de la tabla de
pgina de P1.
Siguiendo este mismo proceso con las dems secciones tanto de P1 como de P2, el resultado
es el que se muestra a continuacin, donde se ha establecido permiso de lectura y ejecucin
para el cdigo y de lectura y escritura para los datos y la pila, tanto de P1 como de P2. El
nico caso excepcional es la seccin de datos de P2, que est alojada en los marcos 1, 8, 9 y
A, en este orden.
P1
Marco
P2
Marco
...
...
80
1e
80
81
1f
81
82
82
83
83
84
84
...
1000
1000
20
1001
1001
21
1002
1002
22
1003
23
Problema 31.
El proceso P se est ejecutando en un sistema que utiliza tablas de pginas de dos niveles para
la gestin de memoria. En un momento determinado, slo algunas de sus pginas estn cargadas
en memoria principal y el contenido de sus tablas de pginas es el que se muestra a continuacin.
Las entradas relevantes de las tablas de pginas (TdP) de segundo nivel han sido etiquetadas con
C, D y P para indicar que la pgina es de cdigo, datos y pila, respectivamente. Sabiendo que el
tamao de pgina es de 4 KB, responder a las siguientes preguntas:
1. Cul es su espacio lgico de direcciones? (1 punto)
2. En qu direcciones fsicas estn alojadas las pginas cargadas en memoria principal?
(0,25 puntos)
3. Da dos ejemplos de direcciones lgicas correctas. Una que genere un fallo de pgina y
otra que no (en este segundo caso, justifica cul sera la direccin fsica a la que se
accedera). (0,25 puntos)
29 de enero de 2016
18 de 25
SSOO
TdP de 2 nivel
(alojada a partir de la
direccin fsica 0x2000)
de V R W X
marco
pg.
de V
R W X
000F4
1 0 1
00002
00000
00004
1 0 1
00000
00003
1 0 1
00000
00001
1 0 1
0000A
0000A
1 0 1
0000B
00005
1 1 0
00000
00004
1 1 0
00003
1 1 0
00000
0 0 0
0 0 0
...
...
3F
F
00000
...
0
3F
F
00000
TdP de 2 nivel
TdP de 2 nivel
(alojada a partir de la
direccin fsica 0xA000)
(alojada a partir de la
direccin fsica 0xB000)
marco
pg.
de V R W X
00000
0 0 0 0
00000
0 0 0 0
00000
0 0 0 0
marco
pg.
de V
R W X
0000F
1 1 0
0000E
1 1 0
00000
0 0 0
...
...
3F
E
00000
0 0 0 0
3F
F
0000D
1 1 1 0
3F
E
00000
0 0 0
3F
F
00000
0 0 0
Respuesta
1. Comenzando por la regin de cdigo, se puede observar que a la primera pgina de la
regin se accede utilizando la entrada 1 de la TdP de 2 nivel alojada en el marco 2, as
que el ndice de 2 nivel de la direccin lgica ser 1. Tambin se puede observar que la
entrada en la TdP de primer nivel que apunta a esta tabla es la 0, as que el ndice de
primer nivel ser 0. Como cada TdP dispone de 0x400 entradas (0 a 0x3FF), esto
implica que el procesador utilizar los 10 bits (0x400 es 210) ms significativos de la
direccin lgica como ndice de primer nivel y los 10 bits siguientes como ndice de 2
nivel. El resto de la direccin lgica ser el desplazamiento, que ser de 12 bits, ya que
el tamao de pgina es 4 KB, tal y como dice el enunciado (4 KB es 2 2210, es decir, 212)
Por lo tanto, la primera direccin lgica de cdigo ser la siguiente:
29 de enero de 2016
19 de 25
SSOO
En binario:
0000 0000 0000 0000 0001 0000 0000 0000
En hexadecimal: 0x00001000
Aplicando el mismo procedimiento al resto de las pginas de cdigo, se puede ver cmo
el nico cambio es que los ndices de segundo nivel sern 2, 3 y 4, respectivamente. Por
lo tanto, esta regin incluir el rango de direcciones lgicas entre la 0x00001000 y la
0x00004FFF.
Repitiendo el mismo procedimiento para las regiones de datos y pila, se obtiene que el
espacio de direcciones lgico del proceso es:
Cdigo: 0x00001000 0x00004FFF
Datos: 0x00005000 0x00007FFF
Pila:
0x013FF000 0x01401FFF
(Para calcular la direccin de la primera pgina de pila basta con darse cuenta de que
el ndice de primer nivel ser 4 y el de segundo 0x3FF, por lo que la direccin lgica de
inicio ser 0000 0001 0011 1111 1111 0000 0000 0000 en binario y, lgicamente,
0x013FF000 en hexadecimal. Igualmente, para la segunda pgina basta con observar
que el ndice de primer nivel es 5 y el de segundo 0, por lo que la direccin lgica de
inicio es 0000 0001 0100 0000 0000 0000 0000 0000 en binario y 0x01400000 en
hexadecimal. Finalmente, la tercera y ltima pgina slo se diferencia de la anterior en
el ndice de segundo nivel, que ser 1, por lo que la direccin lgica de inicio ser 0000
0001 0100 0000 0001 0000 0000 0000 en binario y 0x01401000 en hexadecimal).
2. Las pginas cargadas en memoria principal son accesibles mediante las entradas en las
TdPs de 2 nivel que tienen el bit de vlido a 1. Su rango de direcciones fsicas sern los
que establezcan el marco de pgina contenido en la entrada correspondiente de la TdP
de 2 nivel y por los diferentes valores del desplazamiento, que pueden ir desde 0x000 a
0xFFF. Por tanto, la pgina alojada en la entrada 2 de la TdP alojada en el marco 2,
estar alojada el marco 3 y, por tanto, en el rango de direcciones fsicas que van de la
0x00003000 a la 0x00003FFF.
Repitiendo el procedimiento con el resto de las pginas se obtiene la lista completa:
TdP alojada en el marco 2:
entrada 2: 0x00003000 0x00003FFF
entrada 3: 0x00001000 0x00001FFF
entrada 5: 0x00005000 0x00005FFF
entrada 6: 0x00004000 0x00004FFF
TdP alojada en el marco 0xA:
entrada 0x3FF: 0x0000D000 0x0000DFFF
TdP alojada en el marco 0xB:
entrada 0: 0x0000F000 0x0000FFFF
entrada 1: 0x0000E000 0x0000EFFF
3. La direccin lgica 0x00001000 es un ejemplo de direccin vlida correcta que
generara un fallo de pgina, ya que en el apartado 1 se explica cmo el procesador
accedera a la entrada 1 de la TdP de 2 nivel alojada en el marco 2 y esta entrada tiene
el bit V a 0.
La direccin lgica 0x00002000 es un ejemplo de direccin vlida correcta que no
generara un fallo de pgina, ya que en el apartado 1 se explica cmo el procesador
accedera a la entrada 2 de la TdP de 2 nivel alojada en el marco 2 y esta entrada tiene
el bit V a 1. Tal y como se explica en el apartado 2, la direccin fsica que se generara
sera la 0x00003000.
Problema 32.
El espacio de direcciones lgico del proceso P, que todava no tiene asignado ningn marco de
pgina, debe ser el que se describe a continuacin:
29 de enero de 2016
20 de 25
SSOO
Direcciones lgicas
Descripcin
0x000010000x00004EF0
Cdigo
0x000050000x0000B001
Datos
0x005000000x00505555
0x7FFFC0000x7FFFFFFF
Pila
Suponiendo que la lista de marcos libres incluye los marcos del 0x4F8 al 0x1000, en ese
orden, que el tamao de pgina es 4 KB, que el sistema utiliza tablas de pginas de dos niveles
con 1024 entradas en cada nivel, y suponiendo que se desea que todo el espacio de direcciones de
P est en memoria principal, mostrar los siguientes elementos:
1. (0, 75 puntos) Las tablas de pginas de P.
2. (0, 50 puntos) Las direcciones de memoria fsica utilizadas por cada una de las regiones
de P (cdigo, datos, regin adicional de datos, pila).
Respuesta
1. Suponiendo que el sistema operativo comienza por asignar espacio para la tabla de
pginas de primer nivel, sta ocupara el marco 0x4F8.
Si ahora comenzara por la seccin de cdigo, observara que necesita de 4 marcos de
pgina, ya que la seccin ocupa 0x3EF0 bytes. Si ahora va llenando pgina a pgina,
la que contendra las direcciones 0x1000 a 0x1FFF se alojara en el marco 0x4F9.
La direccin lgica de esta pgina (0x00001000) sera dividida por el procesador en
tres partes: ndice de primer nivel, ndice de segundo nivel y desplazamiento. Ambos
ndices constan de 10 bits, ya que se especifica que cada tabla tiene 1024 (210) entradas.
El desplazamiento constar de 12 bits, ya que el tamao de pgina es de 4 KB (2 12). Por
lo tanto, la direccin 0x00001000, que en binario es 0000 0000 0000 0000
0001 0000 0000 0000 dara un ndice de primer nivel igual a 0 y un ndice de
segundo nivel igual 1. Por lo tanto, el SO debera rellenar la entrada 0 de la tabla de
pginas de primer nivel y la entrada 1 de la de segundo. Como la entrada 0 de la TdP de
primer nivel todava no apunta a ninguna TdP de segundo, ser necesario crear una, que
se alojar en el marco 0x4FA.
Teniendo en cuenta que la entrada de la TdP de primer nivel debe apuntar a la TdP de
segundo (que est alojada en el marco 0x4FA) y que la entrada en la TdP de segundo
debe apuntar a la primera pgina de cdigo (que est alojada en el marco 0x4F9), la
situacin tras cargar la primera pgina de cdigo en memoria y aadir la entrada en la
TdP, la situacin podra ser la siguiente:
TdP de 1er nivel
TdP de 2 nivel
marco
pg.
de V R W X
marco
pg.
de V
R W X
004FA
00000
0 0 0
00000
004F9
1 0 1
00000
00000
0 0 0
29 de enero de 2016
21 de 25
SSOO
TdP de 2 nivel
...
3F
F
...
00000
3F
F
00000
0 0 0
Siguiendo el mismo proceso, las 3 pginas restantes del cdigo seran alojadas en los
marcos 0x4FB, 0x4FC y 0x4FD. Estas pginas tendran todas ndice de primer nivel 0
y de segundo nivel 2, 3 y 4, respectivamente, por lo que el resultado sera el siguiente:
TdP de 1er nivel
TdP de 2 nivel
marco
pg.
de V R W X
marco
pg.
de V
R W X
004FA
00000
0 0 0
00000
004F9
1 0 1
00000
004FB
1 0 1
004FC
1 1 0 1
004FD
1 1 0 1
00000
0 0 0 0
...
...
3F
F
...
00000
3F
F
00000
0 0 0
Siguiendo el mismo procedimiento para las dems secciones, el resultado final podra
ser el siguiente:
TdP de 1er nivel
TdP de 2 nivel
marco
pg.
de V R W X
marco
pg.
de V
R W X
004FA
00000
0 0 0
00506
004F9
1 0 1
00000
004FB
1 0 1
...
...
004FC
1 1 0 1
004FD
1 1 0 1
004FE
1 1 1 0
004FF
1 1 1 0
1FE
00000
00500
1 1 1 0
1FF
0050D
00501
1 1 1 0
200
00000
00502
1 1 1 0
00503
1 1 1 0
00504
1 1 1 0
...
29 de enero de 2016
22 de 25
SSOO
TdP de 2 nivel
...
3F
F
00000
00000
0 0 0 0
...
0
3F
F
00000
0 0 0
TdP de 2 nivel
TdP de 2 nivel
marco
pg.
0
00000
de V R W X
0
...
marco
pg.
de V
R W X
00000
0 0 0
...
0FF
00000
100
00505
1 1 1 0
101
00507
1 1 1 0
102
00508
1 1 1 0
103
00509
1 1 1 0
104
0050A
1 1 1 0
3FB
00000
105
0050B
1 1 1 0
3FC
0050C
1 1 1 0
106
00000
3FD
0050E
1 1 1 0
3FE
0050F
1 1 1 0
3FF
00000
1 1 1 0
...
3FF
00000
...
2. Una vez rellenas las tablas de pginas, las direcciones fsicas se obtienen aadiendo el
desplazamiento a los marcos de pgina especificados por las tablas de pginas de
segundo nivel. Por ejemplo, la seccin de cdigo ocupa los marcos 0x4F9 y del 0x4FB
al 0x4FD, por lo que ocupara las direcciones fsicas de la 0x4F9000 a la 0x4F9FFF
y de la 0x4FB000 a la 0x4FDEF0 (aunque tendra asignada hasta la 0x4FDFFF).
De forma similar, la seccin de datos ocupara de la direccin 0x4FE000 a la
0x504001, la seccin adicional de datos de la 0x505000 a la 0x505FFF y de la
0x507000 a la 0x50B555; y la seccin de pila de la 0x50C000 a la 0x50CFFF y
de la 0x50E000 a la 0x50FFFF.
Problema 33.
Un sistema multiprogramado tiene en memoria principal dos procesos (P1 y P2), tal y como
muestra el dibujo 2.
0xD000
Datos P1 Cdigo P1 y P2
(0-0xFFF)
(slo lectura)
Datos P1
(0x10000x3FFF)
Pila de P1
0x1E000
Datos P2
Pila P2
0x1000
0x2000
0x8000
0xB000
0x10000
0x20000
0x24000
Dibujo 2. El grfico no est a escala. Los valores numricos entre parntesis indican desplazamientos relativos
al comienzo de la seccin.
29 de enero de 2016
23 de 25
SSOO
Respuesta
1. El sistema solamente puede estar utilizando paginacin. En efecto, puede ser paginacin
porque todas regiones estn alineadas en direcciones que son mltiplos del tamao de
pgina (4 KB = 0x1000 bytes). No puede ser segmentacin, ya que la regin de datos de
P1 est dividida en dos zonas disjuntas de memoria fsica.
2. Un tamao de pgina de 4 KB (212 bytes) supone 12 bits de desplazamiento. Por lo tanto,
el cdigo comenzar en la pgina 1 (direccin lgica 0x1000) y ocupar tambin las
pginas 2 a la 6, puesto que ocupa 6 marcos de pgina (del 2 al 7). De forma similar, la
seccin de datos ocupar las pginas 80 a 83 en el caso de P1 (marcos 1, 8, 9 y A) y las
pginas 80 y 81 en el de P2 (marcos 1E y 1F). Aplicando el mismo procedimiento para
las pilas de los procesos,6 se obtienen las siguientes tablas de pginas.
TdP de P1
marco
0
TdP de P2
V R W X
marco
R W X
00000
0 0 0
00002
1 1 0 1
00002
1 0 1
00003
1 1 0 1
00003
1 0 1
00004
1 1 0 1
00004
1 0 1
00005
1 1 0 1
00005
1 0 1
00006
1 1 0 1
00006
1 0 1
00007
1 1 0 1
00007
1 0 1
7
...
0
...
80
00001
1 1 1 0
80
0001E
1 1 0
81
00008
1 1 1 0
81
0001F
1 1 0
82
00009
1 1 1 0
82
83
0000A
1 1 1 0
84
0
...
0
...
0FFC 00023
1 1 0
29 de enero de 2016
24 de 25
SSOO
TdP de P1
TdP de P2
0FFD 0000F
1 1 1 0
0FFD 00022
1 1 0
0FFE 0000E
1 1 1 0
0FFE 00021
1 1 0
0FFF 0000D
1 1 1 0
0FFF 00020
1 1 0
29 de enero de 2016
25 de 25