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.
Marco
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
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
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 |
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