sábado, 21 de mayo de 2011

PAGINACIÓN

PAGINACIÓN 

División de páginas de los espacios de memoria

El espacio virtual se divide en páginas.

Algunas páginas están en memoria principal.

· El SO se encarga de que estén en memoria principal las paginas necesarias

· Para ello trata los fallos de página producidos por la MMU.
A
B
C
D
E
F
G
H










Memoria lógica

 
Marco
4

V

I
6
V

I

I
9
V

I

I
 Bit valido invalido









Esquema de traducción de direcciones

· Las direcciones generadas por la CPU se dividen en

· Numero de pagina (p)- utilizado en la tabla de páginas que contiene las direcciones base de cada página en la memoria física.

· El desplazamiento de página (d)- combinado con la dirección base definen la dirección de memoria física que es enviada a la unidad de memoria.

· traducción: proceso referencia (p,d), se busca en la tabla de correspondencia de páginas para ver la p’ (p real), la dirección real es p’+d. por agilidad tabla



Elementos de la tabla de páginas



Desactivada cache

Referenciada
Modificada

Protección

Presente /ausente
N° de marco/swap







Otras informaciones

· Copia en escritura

· Edad

· No pagina (fija en memoria fija)

· Rellenar a ceros



Buffer de traducción anticipada (TBL)

· la tabla de páginas se mantiene en memoria principal.

· El registro base de la tabla de páginas (PTBR) señala la tabla de paginas

· El registro de longitud de la tabla de páginas (PRLR) indica el tamaño de la tabla de páginas.

· Toda memoria virtual puede causar dos accesos a memoria física

· Uno para buscar en la tabla de pagina apropiada

· Uno para buscar los datos solicitados

· Para solventar este problema, la mayoría de esquemas de memoria virtual utilizan una cache especial de alta velocidad para las entradas de la tabla de pagina

· Se le denomina buffer de traducción anticipada [traslation lookaside buffer (TBL)], también llamado registros asociativos.

· Contiene aquellas entradas de la tabla de páginas ue han sido usadas de forma más reciente

· Dada una dirección virtual, el procesador primero examina la TLB

· Si la entrada de la tabla de páginas solicitada está presente (acierto en TLB), entonces se recupera el numero de marco y se construye la dirección real

· Si la entrada de la tabla de paginas solicitada no se encuentra (fallo en la TLB), el procesador utiliza el numero de pagina para indexar la tabla de páginas del proceso

· Primero comprueba si la página solicitada está todavía en la memoria principal

· Si no se encuentra en la memoria principal, se produce un fallo en la memoria, llamado fallo de pagina

· La TLB se actualiza para incluir esta nueva entrada de tabla de paginas







No hay comentarios:

Publicar un comentario