Paginacin
# Pgina Desplazamiento
Algoritmos de Traduccin
Dinmica de Direcciones
Direccin Real
1
en memoria real
Paginacin
P
0 0
1 1
P R S
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
13 13 Donde:
14 14
15 15 P es la pgina de informacin
16
17
S.O.
18 R es el bit de residencia de pgina:
19 R = 0 si la pgina esta en almacenamiento secundario
Direccione
20
Reales
R = 1 si la pgina esta en almacenamiento real.
21
Absolutas
22
23
S es la direccin del almacenamiento secundario:
24 si la pgina No esta en almacenamiento real.
2
Almacenamiento Almacenamiento
Virtual Real
}
0 0
1
2 P0 1
2 P0
3 3
4 4
}
5 5 0 P1 + desplazamiento 0
6
7 P1 6
7
1
2
P1 + desplazamiento 1
P1 + desplazamiento 2
8 8 3 P1 + desplazamiento 3
9 9 4 P1 + desplazamiento 4
} }
10 0 P2 + desplazamiento 0 10
11
P2 1 P2 + desplazamiento 1 11
12
13
2
3
P2 + desplazamiento 2
P2 + desplazamiento 3
12
13 P2
14 4 P2 + desplazamiento 4 14
15 15
16
17 P3 S.O.
18
19
20 Direccione
Reales
21
22 P4 Absolutas
23
24
Si se tiene:
Direcciones
1. Un espacio de direcciones virtuales de 25k
Virtuales 2. Un espacio de direcciones reales 15k (disponibles para los procesos)
Absolutas 3. El tamao de la pgina de 5 celdas de memoria.
}
0 0 0
2 P0 1
2 P1 1
2
P0
3
3 3 P0 + desplazamiento 3
4 4 4
} }P1
5 0 P1 + desplazamiento 0 5
7 P1 1
2
P1 + desplazamiento 1
P1 + desplazamiento 2
6
8 3 P1 + desplazamiento 3 8
9 4 P1 + desplazamiento 4 9
Tabla del Mapa de Pginas
}
10 10
11
12 P2 11
12
P4 P2 P R S P
13 13
14 14 P0 0 Pista 2
15 15
P1 1 P0
16
17 P3 S.O. P2 0 Pista 0
18
P3 0 Pista 3
19
20 Direccione P4 1 P2
Reales
21
22 P4 Absolutas
23
Caso 1: Las pginas solicitadas estan en memoria real
24
1) El proceso en ejecucin solicita informacin almacenada en la pgina 1, desplazamiento 3
2) A partir del mapa de pginas se determina si esta en memoria real o secundaria, y si esta donde se encuentra.
3) La pgina se encuentra en memoria real, se realiza la traduccin dinmica de direcciones:
Dir. Real = (P x L ) + D
Donde : P es el marco de pgina (memoria real) donde se encuentra la pgina solicitada
L es el tamao de la pgina
D es el desplazamiento solicitado
Por lo tanto la direccin real de la pgina 1 y desplazamiento 3 es:__________________________
4
Almacenamiento Almacenamiento
Virtual Real
P0
}
0 0 0
2 P0 1
2 P1 1
3
3 3 P0 + desplazamiento 3
4 4 4
}
5 0 P1 + desplazamiento 0 5
10
6
9
P1 1
4
P1 + desplazamiento 1
P1 + desplazamiento 2
P1 + desplazamiento 3
P1 + desplazamiento 4
10
6
9
}P1
P2 + desplazamiento 0
Tabla del Mapa de Pginas
11
12
13
14
15
P2 11
12
13
14
15
P4
} P2 P
P0
P1
R
0
1
S
Pista 2
P
P0
16
17 P3 S.O. P2 0 Pista 0
18
P3 0 Pista 3
19
20 P4 + desplazamiento 0
Direccione P4 1 P2
Reales
21
22 P4 Absolutas
23
24
Dir. Real = (P x L ) + D
Dir. Real = _____________________________________
Dir. Virtual (P4,0) =_______________________________
5
Almacenamiento Almacenamiento
Tabla del Mapa de Pginas
Virtual Real
}
0 0 0
2 P0 1
2 P1 1
2
P0 P R S P
3 3 3
P0 + desplazamiento 3 P0 0 Pista 2
4
4 4
P1 1 P0
}
5 0 P1 + desplazamiento 0 5
10
6
9
P1 1
4
P1 + desplazamiento 1
P1 + desplazamiento 2
P1 + desplazamiento 3
P1 + desplazamiento 4
10
6
9
P3
}P1P1 + desplazamiento 4
P2 + desplazamiento 0
P2
P3
P4
0
0
1
Pista 0
Pista 3
P2
11
12
13
14
15
P2 11
12
13
14
15
P4
} P2
Actualizacin de la tabla:
P3 1 P1
16
17 P3 S.O.
18
19 P3 + desplazamiento 4
20 Direccione
P4 + desplazamiento 0
Reales
21
22 P4 Absolutas
23
24
Caso 2: La pgina solicitada NO se encuentra en memoria real (Fallo de pgina)
Dir. Real = (P x L ) + D
Dir. Real =________________________________
Dir. Virtual (P3,4) = ________________________ 6
Almacenamiento Almacenamiento
Tabla del Mapa de Pginas
Virtual Real
}
0 0 0
2 P0 1
2 P1 1
2
P0 P R S P
3 P0 + desplazamiento 3 3 3
P0 + desplazamiento 3 P0 0 Pista 2
4
4 4
P1 1 P0
}
5 0 P1 + desplazamiento 0 5
10
6
9
P1 1
4
P1 + desplazamiento 1
P1 + desplazamiento 2
P1 + desplazamiento 3
P1 + desplazamiento 4
10
6
9
P3
}P1P1 + desplazamiento 4
P2
P3
P4
0
1
1
Pista 0
P1
P2
11
12
13
14
15
P2 11
12
13
14
15
P0
} P2
P2 + desplazamiento 3
Actualizacin de la tabla:
P4
P0
0
1
Pista 3
P2
16
17 P3 S.O.
18
19 P3 + desplazamiento 4
20 Direccione
Reales
21
22 P4 Absolutas
23
24
Caso 3: La pgina solicitada NO se encuentra en memoria real (Fallo de pgina), y NO hay marcos libres
Stack 0
1 0
R S L r w a e S
2 1
Datos 3
4
2
6 Cdigo S1 4
Cdigo 7
8
6
9 8
9
10
Donde:
11
12 0
14
15
Stack 2
3
R = 0 si la pgina esta en almacenamiento secundario
R = 1 si la pgina esta en almacenamiento real.
16 4
17
18
S es la direccin del almacenamiento secundario:
19 si la pgina No esta en almacenamiento real.
20
21 0
S es la direccin base del segmento, si es que se encuentra en
22
23 Datos 1
2 S2 almacenamiento real.
24 3
L es la longitud del segmento
S.O.
r,w,e,a son los permisos de acceso al segmento (lectura, escritura,
ejecucin y adicin respectivamente).
Direccione
Reales
Absolutas
8
Almacenamiento
Real
0
Tabla del Mapa de Segmentos
1 0
2 1
3 2 R S L R WE A S
4 3 S1 + desplazamiento 3
5 4 S0 1 5 1 12
6 5
8
Cdigo 6
7
S1 S1
S2
1
1
10
4 1 1
1 1
21
9 8
10 9
11
12 0 S0 + desplazamiento 0
1 Toda direccin dentro del segmento se mide a partir de la direccin cero.
S0
13
14
15
Stack 2
3
1) El proceso en ejecucin solicita informacin almacenada en el segmento1,
16 4
17
desplazamiento 3
18 2) A partir del mapa de segmentos se determina si esta en memoria real o
19 secundaria, y si esta donde se encuentra.
20 3) Si el segmento se encuentra en memoria real verifica sus permisos,
0
21 si los permisos corresponden con la operacin que desea realizar el proceso,
22
23 Datos 1
2 S2 se le da acceso al segmento.
4) Se realiza la traduccin dinmica de direcciones:
24 3
Direccione
Dir. Real (S1,3) = ______________________
Reales Ejemplos:
Absolutas
Dir. Real (S0,0) = _______________________
Dir. Real (S2,2) = _______________________
9
Segmentacin/Paginacin
Almacenamiento
Real
0
Tabla del Mapa de Segmentos
1
3 R S L R WE A S
4
5 S0 1 7 1 8
6
S1 1 10 1 15
7
8 0
9 1
2
10
11
12
3
4 S0
5
13
6
14 - Para este ejemplo el tamao de las pginas es de 5
{
0 0
15 - Por cada segmento pginado deben existir su tabla de mapa de pginas :
1 16 1
P0 2
3
17
P2 2
3
Tabla del Mapa de Pginas
S1
18
del Segmento S1
4 19 4
P R S P
{
0 5
20
1 6
P1
21
2
3
22
P3 7
8
P0 0 Pista 2
4
23
9
P1 0 Pista 0
24
P2 1 P0
S.O. P3 1 P1
Desplazamiento Desplazamiento
de la pgina del segmento
10
Toda direccin dentro del segmento se mide a partir de la direccin cero.
Dir. Real = (Marco de pgina x Tamao de la pgina ) + Desplazamiento + Direccin Base del Segmento
Dir. Real = (P x t ) + d + S
Ejemplos:
a) para el segmento 1, pgina 2 y desplazamiento 4 (S1, P2, 4):