Post on 04-Aug-2015
DANIEL ESTEBAN LARA RAMOS
LUZ STELLA GIL OSPINA
COORPORACION UNIVERSITARIA DE CIENCIA Y DESARROLLO
SISTEMAS OPERATIVOS
PAGINACION Y SEGMENTACION
17-08-2012
BOGOTA D.C
ADMINISTRACIÓN DE LA MEMORIA
Depende de factores como del diseño del Hardware del
sistema
PAGINACIÓN SEGMENTACIÓN
Dividen los programas en pequeñas páginas , y a la memoria en marcos de página.Permite que el espacio de direcciones lógicas de un proceso no sea contiguo.
Tanto la memoria física como la memoria virtual se dividen en bloques (en general de distinto tamaño, llamados segmentos), que son las que van a disco a medida que se va llenando la memoria física, o se recuperan del disco cuando vuelven a ser necesarias.
Cada página generada por la CPU se divide en dos partes : Un número de página (p) y un desplazamiento de página (d). El número de páginas se emplea como un índice en una tabla de páginas . La tabla de página contiene la dirección base de cada página (f) en la memoria física. Esta dirección base se combina con el desplazamiento de la página para definir la dirección física de la memoria que se envía a la unidad de memoria.
Empleando un tamaño de página (tp) 8 bytes y un memoria física (mf) 64 bytes indique el número de páginas y calcule la dirección de la memoria física para los datos indicados en el diagrama. Los datos son 3, 9,14,18,28
64/8= 8 bytes (Bytes de Página)
mf/tp= mp
01234567
89101112131415
1617181920212223
2425262728293031
01234567
01234567
0123456701234567
Posiciones Marcos de Página
0 3
1 4
2 23 1
28
18
3
914
0
8
16
24
32
40
48
56
33
p=0mp=3(mp*bp)=d+pos=df (3*8)=24+3=27
99
p=1mp=4(mp*bp)=d+pos=df (4*8)=32+1=33
1414
p=1mp=4(mp*bp)=d+pos=df (4*8)=32+6=38
1818
p=2mp=2(mp*bp)=d+pos=df (2*8)=16+2=18
2828
p=3mp=1(mp*bp)=d+pos=df (1*8)=8+4=12
0
Página
1
2
3
Empleando un tamaño de página (tp) 4 bytes y un memoria física (mf) 16 bytes indique el número de páginas y calcule la dirección de la memoria física para los datos indicados en el diagrama. Los datos son a, f, l, o.
16/4= 4 bytes (Bytes de Página)
mf/tp= mp
abcd
0123
PosicionesMarcos de Página
0 3
1 4
2 23 5
0
aa
p=0mp=3(mp*bp)=d+pos=df (3*4)=12+0=12
ll
P=2mp=2(mp*bp)=d+pos=df (2*4)=8+3=11
ff
p=1mp=4(mp*bp)=d+pos=df (4*4)=16+1=17
oo
p=3Mp=5(mp*bp)=d+pos=df (5*4)=20+2=22
1
Página
2
3
4
efgh
ijkl
mnop
0123
0123
0123
V
V
I
I4
8
12
l
a
Una dirección lógica costa de dos partes: un número de segmentos (s), y un desplazamiento de dicho segmento ,(d). El número de segmentos se utiliza como un índice en la tabla de segmentos. El desplazamiento (d) de la dirección lógica debe estar entre 0 y el limite del segmento. De no ser así, se ocasiona una trampa al sistema operativo (intento de direccionamiento lógico más allá del final del segmento). Si este desplazamiento es legal, se agrega a la base del segmento para producir la dirección en la memoria física del byte deseado.
Dada la siguiente tabla de segmentos cuales son las direcciones físicas en las direcciones lógicas.
Segmentos Limite base
0 219 600
1 2300 14
2 90 100
3 1327 580
4 1952 96
S D
a) 0 430
b) 1 10
c) 2 500
d) 3 400
e) 4 112
a) s=0; b=219; L= 600; d=430
d < L430 <600219+430= 649
b) s=1; b=2300; L= 14; d=10
d < L10 <142300+10= 2310
c) s=2; b=90; L= 100; d=500
d < L500 <100“ERROR”
d) s=3; b=1327; L= 580; d=400
d < L400 < 5801327+400= 1727
e) s=4; b=1952; L= 96; d=112
d < L112 <96“ERROR”