Una producción de:  -  Karla Cabrera -  Cinthia Pulla -  Jammil Ramos
PAGINACIÓN Y SEGMENTACIÓN Sistemas Operativos
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.
CPU p  d f  d  f MEMORIA FÍSICA p TABLA DE PÁGINAS DIRECCIÓN  LÓGICA DIRECCIÓN  FÍSICA
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
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 Posiciones Marcos de Página 0  3 1  4 2  2 3  1  28 18 3 9 14 0 8 16 24 32 40 48 56 p=0 mp=3 (mp*bp)=d+pos=df  (3*8)=24+3=27 p=1 mp=4 (mp*bp)=d+pos=df  (4*8)=32+1=33 p=1 mp=4 (mp*bp)=d+pos=df  (4*8)=32+6=38 p=2 mp=2 (mp*bp)=d+pos=df  (2*8)=16+2=18 p=3 mp=1 (mp*bp)=d+pos=df  (1*8)=8+4=12 0 Página 1 2 3 3 9 14 18 28
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
a b c d 0 1 2 3 Posiciones Marcos de Página 0  3 1  4 2  2 3  5  0 p=0 mp=3 (mp*bp)=d+pos=df  (3*4)=12+0=12 P=2 mp=2 (mp*bp)=d+pos=df  (2*4)=8+3=11 p=1 mp=4 (mp*bp)=d+pos=df  (4*4)=16+1=17 p=3 Mp=5 (mp*bp)=d+pos=df  (5*4)=20+2=22 1 Página 2 3 4 e f g h i j k l m n o p 0 1 2 3 0 1 2 3 0 1 2 3 V V I I 4 8 12 l a a l f o
CPU s  + limite  base d < tabla de segmentos sí no memoria física trampa: error de direccionamiento
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 < L 430 <600 219+430= 649 b) s=1; b=2300; L= 14; d=10 d < L 10 <14 2300+10= 2310 c) s=2; b=90; L= 100; d=500 d < L 500 <100 “ ERROR” d) s=3; b=1327; L= 580; d=400 d < L 400 < 580 1327+400= 1727 e) s=4; b=1952; L= 96; d=112 d < L 112 <96 “ ERROR”
90 190 219 819 1327 1907 1952 2048 2300 2314 S2 S0 S3 S4 S1

PaginacióN Y SegmentacióN

  • 1.
    Una producción de: - Karla Cabrera - Cinthia Pulla - Jammil Ramos
  • 2.
    PAGINACIÓN Y SEGMENTACIÓNSistemas Operativos
  • 3.
    ADMINISTRACIÓN DE LAMEMORIA 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.
  • 4.
    CPU p d f d f MEMORIA FÍSICA p TABLA DE PÁGINAS DIRECCIÓN LÓGICA DIRECCIÓN FÍSICA
  • 5.
    Cada página generadapor 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.
  • 6.
    Empleando un tamañode 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
  • 7.
    0 1 23 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 Posiciones Marcos de Página 0 3 1 4 2 2 3 1 28 18 3 9 14 0 8 16 24 32 40 48 56 p=0 mp=3 (mp*bp)=d+pos=df (3*8)=24+3=27 p=1 mp=4 (mp*bp)=d+pos=df (4*8)=32+1=33 p=1 mp=4 (mp*bp)=d+pos=df (4*8)=32+6=38 p=2 mp=2 (mp*bp)=d+pos=df (2*8)=16+2=18 p=3 mp=1 (mp*bp)=d+pos=df (1*8)=8+4=12 0 Página 1 2 3 3 9 14 18 28
  • 8.
    Empleando un tamañode 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
  • 9.
    a b cd 0 1 2 3 Posiciones Marcos de Página 0 3 1 4 2 2 3 5 0 p=0 mp=3 (mp*bp)=d+pos=df (3*4)=12+0=12 P=2 mp=2 (mp*bp)=d+pos=df (2*4)=8+3=11 p=1 mp=4 (mp*bp)=d+pos=df (4*4)=16+1=17 p=3 Mp=5 (mp*bp)=d+pos=df (5*4)=20+2=22 1 Página 2 3 4 e f g h i j k l m n o p 0 1 2 3 0 1 2 3 0 1 2 3 V V I I 4 8 12 l a a l f o
  • 10.
    CPU s + limite base d < tabla de segmentos sí no memoria física trampa: error de direccionamiento
  • 11.
    Una dirección lógicacosta 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.
  • 12.
    Dada la siguientetabla 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
  • 13.
    a) s=0; b=219;L= 600; d=430 d < L 430 <600 219+430= 649 b) s=1; b=2300; L= 14; d=10 d < L 10 <14 2300+10= 2310 c) s=2; b=90; L= 100; d=500 d < L 500 <100 “ ERROR” d) s=3; b=1327; L= 580; d=400 d < L 400 < 580 1327+400= 1727 e) s=4; b=1952; L= 96; d=112 d < L 112 <96 “ ERROR”
  • 14.
    90 190 219819 1327 1907 1952 2048 2300 2314 S2 S0 S3 S4 S1