Está en la página 1de 24

MEMORIA VIRTUAL

Memoria

Disco
Memoria Virtual

Apuntes realizados por:


Juan Fernández Peinador
Facultad de Informática
Mayo de 1998
Memoria Virtual Computadores

INDICE

3.0.- INTRODUCCIÓN. 3
3.1. Conceptos. 7
3.2. Traducción de direcciones. 8
3.3. Direcciones virtuales. 9
3.4. Carga y ejecución de programas. 10
3.5. Consideraciones de diseño de un sistema de memoria virtual. 11
3.6. Localización de páginas. 12
3.7. Tratamiento de los fallos de páginas. 14
3.8. TLB (Translation Lookaside Buffer). 16
3.8.1. Tratamiento de los fallos de página. 18
3.8.2. Consideraciones de diseño. 19
3.9. Memoria caché y memoria virtual para la DECStation 3100. 20
3.10. Implementación de la protección con memoria virtual. 22
3.11. Características de la memoria virtual en algunos sistemas actuales. 24
3.12. Un marco común para las jerarquías de memoria. 24

Facultad de Informática. Universidad de Murcia. 2


Memoria Virtual Computadores

INTRODUCCIÓN

• LA MEMORIA PRINCIPAL PUEDE ACTUAR COMO UNA


CACHÉ PARA LA MEMORIA SECUNDARIA,
CONSTRUIDA HABITUALMENTE CON DISCOS
MAGNÉTICOS

MEMORIA VIRTUAL

LA MEMORIA VIRTUAL GESTIONA LOS DOS NIVELES


DE LA JERARQUÍA DE MEMORIA REPRESENTADOS POR
LA MEMORIA PRINCIPAL Y LA MEMORIA SECUNDARIA

• OBJETIVOS:

COMPARTICIÓN EFICIENTE DE MEMORIA ENTRE


MÚLTIPLES PROGRAMAS

SUPERAR LOS INCONVENIENTES DE UNA MEMORIA


PRINCIPAL PEQUEÑA Y LIMITADA

SOLUCIONAR LAS DIFICULTADES DERIVADAS DE LA


EJECUCIÓN SIMULTÁNEA DE VARIOS PROGRAMAS

Facultad de Informática. Universidad de Murcia. 3


Memoria Virtual Computadores

INTRODUCCIÓN

COMPARTICIÓN EFICIENTE DE MEMORIA ENTRE


MÚLTIPLES PROGRAMAS

• MÚLTIPLES PROGRAMAS PUEDEN EJECUTARSE A


LA VEZ EN LA MISMA MÁQUINA

• LA MEMORIA TOTAL REQUERIDA POR TODOS LOS


PROGRAMAS PUEDE SER MUCHO MAYOR QUE LA
CANTIDAD DE MEMORIA FÍSICA DISPONIBLE EN LA
MÁQUINA, PERO SÓLO UNA FRACCIÓN DE ESTA
MEMORIA SE UTILIZA EN CUALQUIER INSTANTE DE
TIEMPO

• LA MEMORIA PRINCIPAL SÓLO NECESITA LAS


PARTES ACTIVAS DE LOS PROGRAMAS, IGUAL QUE
UNA CACHÉ CONTIENE SÓLO LOS DATOS E
INSTRUCCIONES USADOS RECIENTEMENTE POR UN
PROGRAMA

• COMPARTICIÓN EFICIENTE DE RECURSOS:


PROCESADOR Y MEMORIA PRINCIPAL

Facultad de Informática. Universidad de Murcia. 4


Memoria Virtual Computadores

INTRODUCCIÓN

SUPERAR LOS INCONVENIENTES DE UNA MEMORIA


PRINCIPAL PEQUEÑA Y LIMITADA

• SI EL TAMAÑO DEL PROGRAMA EXCEDE LA


CANTIDAD DE MEMORIA PRINCIPAL DISPO-NIBLE,
EL PROGRAMA SE DIVIDE EN PARTES
MUTUAMENTE EXCLUSIVAS (OVERLAYS O
RECUBRIMIENTOS)

• LOS OVERLAYS SE CARGAN O DESCARGAN BAJO


CONTROL DEL PROGRAMA: NO SE DEBE INTENTAR
ACCEDER A UN OVERLAY NO CARGADO Y LOS
OVERLAYS CARGADOS NO PUEDEN EXCEDER EL
TAMAÑO DE LA MEMORIA PRINCIPAL

BAJA PRODUCTIVIDAD DEL PROGRAMADOR

• LA MEMORIA VIRTUAL ASUME ESTA RESPON-


SABILIDAD LIBERANDO AL PROGRAMADOR DE
PREOCUPARSE POR EL TAMAÑO DE SUS
PROGRAMAS

Facultad de Informática. Universidad de Murcia. 5


Memoria Virtual Computadores

INTRODUCCIÓN

SOLUCIONAR LAS DIFICULTADES DERIVADAS DE LA


EJECUCIÓN SIMULTÁNEA DE VARIOS PROGRAMAS

• LOS PROGRAMAS COMPARTEN LA MEMORIA FÍSICA


E INCLUSO PUEDEN CAMBIAR DINÁMICAMENTE
DURANTE LA EJECUCIÓN

• CADA PROGRAMA POSEE SU PROPIO ESPACIO DE


DIRECCIONES: CONJUNTO SEPARADO DE POSICIONES
DE MEMORIA ACCESIBLES SÓLO POR ÉL

• SE DEBE PROTEGER EL ESPACIO DE DIRECCIONES DE


CADA PROGRAMA DEL RESTO DE LOS PROGRAMAS,
ES DECIR, HAY QUE EVITAR QUE UN PROGRAMA
PUEDA ACCEDER A POSICIONES DE MEMORIA FUERA
DE SU PROPIO ESPACIO DE DIRECCIONES

• LA MEMORIA VIRTUAL RESUELVE LOS PROBLEMAS


DE LA TRADUCCIÓN DE DIRECCIONES Y LA
PROTECCIÓN DEL ESPACIO DE DIRECCIONES

Facultad de Informática. Universidad de Murcia. 6


Memoria Virtual Computadores

CONCEPTOS

• LOS CONCEPTOS SOBRE EL FUNCIONAMIENTO DE LA


MEMORIA CACHÉ Y LA MEMORIA VIRTUAL SON LOS
MISMOS

• CADA BLOQUE DE MEMORIA VIRTUAL SE


DENOMINA PÁGINA

• LOS FALLOS DE MEMORIA VIRTUAL SON FALLOS DE


PÁGINA (PAGE FAULTS)

• LA MEMORIA VIRTUAL Y LA MEMORIA FÍSICA SE


DESCOMPONEN EN PÁGINAS: A CADA PÁGINA
VIRTUAL LE CORRESPONDE UNA PÁGINA FÍSICA

• UNA PÁGINA VIRTUAL PUEDE NO ESTAR EN LA


MEMORIA PRINCIPAL, Y EN ESE CASO, ESTARÁ
UBICADA EN DISCO

• DOS PÁGINAS VIRTUALES PUEDEN CORRESPONDER


A UNA MISMA PÁGINA FÍSICA:

COMPARTICIÓN DE DATOS O CÓDIGO ENTRE


PROGRAMAS

Facultad de Informática. Universidad de Murcia. 7


Memoria Virtual Computadores

TRADUCCIÓN DE DIRECCIONES

• EL PROCESADOR GENERA UNA DIRECCIÓN


VIRTUAL QUE ES TRADUCIDA POR UNA
COMBINACIÓN HARDWARE Y SOFTWARE A UNA
DIRECCIÓN FÍSICA PARA ACCEDER A MEMORIA
PRINCIPAL

CORRESPONDENCIA DE MEMORIA (MEMORY MAPPING) O
TRADUCCIÓN DE DIRECCIONES

Address translation

Physical addresses

Disk addresses
Virtual addresses

Facultad de Informática. Universidad de Murcia. 8


Memoria Virtual Computadores

DIRECCIONES VIRTUALES
Virtual address
31 30 29 28 27 15 14 13 12 11 10 9 8 3210

Virtual page number Page offset

Translation

29 28 27 15 14 13 12 11 10 9 8 3210

Physical page number Page offset

Physical address
• EL TAMAÑO DEL CAMPO DE DESPLAZAMIENTO DETERMINA EL TAMAÑO DE LA PÁGINA
• EL NÚMERO DE PÁGINAS DIRECCIONABLES CON LA DIRECCIÓN VIRTUAL NO TIENE POR
QUÉ CONCIDIR CON EL NÚMERO DE PÁGINAS DIRECCIONABLES CON LA DIRECCIÓN
FÍSICA (4K por página, 1G de memoria física, 4G de memoria virtual)

Facultad de Informática. Universidad de Murcia. 9


Memoria Virtual Computadores

CARGA Y EJECUCIÓN DE PROGRAMAS

• LA MEMORIA VIRTUAL SIMPLIFICA EL PROCESO DE


CARGA Y EJECUCIÓN DE LOS PROGRAMAS

• PERMITE LA REUBICACIÓN DE UN PROGRAMA


PORQUE LAS DIRECCIONES VIRTUALES SE
CORRESPONDEN A DIRECCIONES FÍSICAS ANTES DE
QUE SE UTILICEN PARA ACCEDER A MEMORIA
FÍSICA

EL PROGRAMA SE PUEDE CARGAR EN CUALQUIER


POSICIÓN DE MEMORIA FÍSICA

• NO ES NECESARIO ENCONTRAR UN BLOQUE


CONTIGUO DE MEMORIA FÍSICA PARA UBICAR EL
PROGRAMA, SOLAMENTE UN NÚMERO APROPIADO
DE PÁGINAS EN LA MEMORIA FÍSICA

Facultad de Informática. Universidad de Murcia. 10


Memoria Virtual Computadores

CONSIDERACIONES DE DISEÑO DE UN SISTEMA DE


MEMORIA VIRTUAL

• EL DISEÑO DE LA MEMORIA VIRTUAL ESTÁ


CONDICIONADO POR EL ALTO COSTE DE LOS
FALLOS:

- LA PÁGINA DEBE SER SUFICIENTEMENTE


GRANDE PARA AMORTIZAR EL ELEVADO TIEMPO
DE ACCESO (4K, 16K)

- INTERESAN AQUELLAS ESTRUCTURAS QUE


REDUZCAN LA FRECUENCIA DE FALLOS DE
PÁGINA ⇒ FLEXIBILIDAD EN LA COLOCACIÓN DE
LAS PÁGINAS

- LOS FALLOS PUEDEN SER TRATADOS POR


SOFTWARE, PORQUE EL CONSUMO DE TIEMPO ES
PEQUEÑO COMPARADO CON EL TIEMPO DE
ACCESO AL DISCO

- LA ESTRATEGIA DE ESCRITURA DIRECTA (WRITE-


THROUGH) NO RESULTA APROPIADA PUES LAS
ESCRITURAS CONSUMEN MUCHO TIEMPO ⇒
ESTRATEGIA DE POSTESCRITURA (WRITE BACK)
CON UN BIT DE MODIFICACIÓN QUE INDICA SI EN
LA PÁGINA SE HA REALIZADO ALGUNA
ESCRITURA

Facultad de Informática. Universidad de Murcia. 11


Memoria Virtual Computadores

LOCALIZACIÓN DE PÁGINAS

• LA MEMORIA VIRTUAL ES TOTALMENTE


ASOCIATIVA ⇒ CUALQUIER PÁGINA VIRTUAL SE
PUEDE ASOCIAR A CUALQUIER PÁGINA FÍSICA

• LA CORRESPONDENCIA ENTRE PÁGINAS VIRTUALES


Y PÁGINAS FÍSICAS VIENE DADA POR LA TABLA DE
PÁGINAS (PAGE TABLE)

• LA TABLA DE PÁGINAS ESTÁ INDEXADA CON EL


NÚMERO DE PÁGINA DE LA DIRECCIÓN VIRTUAL Y
NOS DA EL NÚMERO DE PÁGINA FÍSICA
CORRESPONDIENTE

• LA TABLA DE PÁGINAS RESIDE EN MEMORIA, Y


CADA PROGRAMA TIENE SU PROPIA TABLA DE
PÁGINAS: CORRESPONDENCIA ENTRE EL ESPACIO
DE DIRECCIONES VIRTUAL DEL PROGRAMA Y LA
MEMORIA FÍSICA

• EL HARDWARE INCLUYE UN REGISTRO, REGISTRO


DE LA TABLA DE PÁGINAS, QUE APUNTA AL
COMIENZO DE LA TABLA DE PÁGINAS (FACILITA EL
CAMBIO DE CONTEXTO ENTRE PROCESOS)

• CADA PÁGINA POSEE UN BIT DE VALIDEZ QUE


INDICA SI LA PÁGINA ESTÁ PRESENTE EN MEMORIA
PRINCIPAL

Facultad de Informática. Universidad de Murcia. 12


Memoria Virtual Computadores

LOCALIZACIÓN DE PÁGINAS

P ag e t able re gister

V i rtu a l a dd re s s

3 1 3 0 2 9 28 27 1 5 14 1 3 12 1 1 10 9 8 3 2 1 0

V irtua l p ag e nu m ber P ag e o ffse t

20 12

V a lid P hys ic al pa ge n um be r

P age ta ble

18
If 0 th en pa ge is no t
pre s en t in m e m o ry

29 28 27 15 1 4 13 1 2 11 10 9 8 3 2 1 0

P hys ic al pa ge n um be r P ag e o ffse t

P hy sic al ad dre ss

Facultad de Informática. Universidad de Murcia. 13


Memoria Virtual Computadores

TRATAMIENTO DE LOS FALLOS DE PÁGINA

• SI EL BIT DE VALIDEZ DE UNA PÁGINA VIRTUAL


ES CERO, SE PRODUCE UN FALLO DE PÁGINA, Y
EL S.O. DEBE TOMAR EL CONTROL (MEDIANTE
EL MECANISMO DE EXCEPCIONES)

• EL S.O. DEBE BUSCAR LA PÁGINA EN EL


SIGUIENTE NIVEL DE LA JERARQUÍA (DISCO), Y
DECIDIR EN QUÉ PARTE DE LA MEMORIA FÍSICA
LA UBICA

• LA DIRECCIÓN VIRTUAL NO ES SUFICIENTE


PARA LOCALIZAR UNA PÁGINA EN DISCO, ES
NECESARIA UNA ESTRUCTURA QUE NOS
INDIQUE LA ZONA DEL DISCO DONDE SE
ALMACENA CADA PÁGINA VIRTUAL (ESTA
ESTRUCTURA PUEDE FORMAR PARTE DE LA
TABLA DE PÁGINAS O SER INDEPENDIENTE)

• SI LA MEMORIA ESTÁ LLENA, ES NECESARIO


SELECCIONAR UNA PÁGINA DE LA MEMORIA
PARA SER SUSTITUIDA ⇒ SE ELIGE LA PÁGINA
MENOS RECIENTEMENTE USADA (LAST
RECENTLY USED) ⇒ BIT DE USO O BIT DE
REFERENCIA QUE PERMITE AL S.O.
DETERMINAR EL TIEMPO QUE LLEVA SIN
USARSE UNA PÁGINA

Facultad de Informática. Universidad de Murcia. 14


Memoria Virtual Computadores

TRATAMIENTO DE LOS FALLOS DE PÁGINA

number
Page table
Physical memory
Physical page or
Valid disk address

1
1
1
1
0
1
1
0
1 Disk storage
1
0
1

EN ESTE ESQUEMA SE MUESTRAN COMO UNA ÚNICA


TABLA, LA TABLA DE DIRECCIONES DE PÁGINAS FÍSICAS
Y LA TABLA DE DIRECCIONES DE PÁGINAS EN DISCO
(MANTENER UN REGISTRO DE TODAS LAS PÁGINAS
INCLUSO SI ESTÁN EN MEMORIA PRINCIPAL)

Facultad de Informática. Universidad de Murcia. 15


Memoria Virtual Computadores

TLB (TRANSLATION-LOOKASIDE BUFFER)

• POR SU GRAN TAMAÑO, LA TABLA DE PÁGINAS


DEBE ALMACENARSE EN MEMORIA PRINCIPAL

ACCESO A MEMORIA = ACCESO A LA DIRECCIÓN


FÍSICA + ACCESO AL DATO

• LA MEJORA DEL RENDIMIENTO PASA POR LA


LOCALIDAD DE REFERENCIA DE LA TABLA DE
PÁGINAS (LOCALIDAD ESPACIAL Y TEMPORAL DE
LOS DATOS Y/O INSTRUCCIONES CONTENIDOS EN
CADA PÁGINA)

MEMORIA CACHÉ ESPECIAL QUE ALMACENA LAS


TRADUCCIONES RECIENTEMENTE UTILIZADAS QUE
RECIBE EL NOMBRE DE TLB (TRANSLATION-LOOKASIDE
BUFFER O BUFFER DE TRADUCCIONES ANTICIPADAS)

• TLB: CACHÉ QUE CONTIENE UN SUBCONJUNTO DE


LAS CORRESPONDENCIAS DE PÁGINA VIRTUAL A
FÍSICA QUE SE ENCUENTRAN EN LA TABLA DE
PÁGINAS

• EL TLB INCLUYE BITS DE REFERENCIA Y


MODIFICACIÓN

Facultad de Informática. Universidad de Murcia. 16


Memoria Virtual Computadores

TLB (TRANSLATION-LOOKASIDE BUFFER)

Vi rtu a l p a g e P hy s ic a l p a g e
nu m b e r V al id Tag a d d re s s

1
1 Ph ysica l m em o ry
1
1
0
1

P a g e ta bl e
Ph y si ca l p a g e
V a li d o r d is k a d dr es s

1
1
1 D isk stor a g e
1
0
1
1
0
1
1
0
1

Facultad de Informática. Universidad de Murcia. 17


Memoria Virtual Computadores

TRATAMIENTO DE LOS FALLOS DE PÁGINA CON EL TLB

• CUANDO EL PROCESADOR EMITE UNA DIRECCIÓN


VIRTUAL, BUSCAMOS EL NÚMERO DE PÁGINA
CORRESPONDIENTE EN EL TLB:

- ACIERTO ⇒ EL NÚMERO DE PÁGINA FÍSICA SE


EMPLEA PARA CONSTRUIR LA DIRECCIÓN,
ACTIVÁNDOSE EL BIT DE USO O REFERENCIA
(TAMBIÉN EL BIT DE MODIFICACIÓN SI ES UNA
ESCRITURA)

- FALLO ⇒ DETERMINAR SI ES UN FALLO DE


PÁGINA O UN FALLO DE TLB

• FALLO DE TLB ⇒ SE CARGA


LA TRADUCCIÓN DESDE LA
TABLA DE PÁGINAS (POR
SOFTWARE O HARDWARE)
BIT VALIDEZ
• FALLO DE PÁGINA ⇒ EL S.O.
TOMA EL CONTROL (MEDIANTE
EL MECANISMO DE EXCEP-
CIONES)

Facultad de Informática. Universidad de Murcia. 18


Memoria Virtual Computadores

TLB: CONSIDERACIONES DE DISEÑO

• EL TLB ES, NORMALMENTE, UNA CACHÉ


ASOCIATIVA POR CONJUNTOS O TOTALMENTE
ASOCIATIVA:

- MINIMIZAR LA TASA DE FALLOS


- COSTO REDUCIDO DADO SU PEQUEÑO
TAMAÑO

• LA ESTRATEGIA DE SUSTITUCIÓN DE UNA


ENTRADA DEL TLB SUELE SER ALEATORIA PUES
IMPLEMENTAR EL ALGORITMO LRU PODRÍA
RESULTAR EXCESIVAMENTE COSTOSO (LOS FALLOS
DE TLB SON MÁS FRECUENTES QUE LOS FALLOS DE
PÁGINA)

• EL TLB SUELE USAR UNA ESTRATEGIA DE


POSTESCRITURA QUE RESULTA MUY EFICIENTE
PORQUE SE ESPERA QUE LA TASA DE FALLOS DEL
TLB SEA PEQUEÑA

• VALORES TÍPICOS PARA UN TLB

Tamaño de bloque 1 – 2 entradas (4 – 8 bytes cada una)


Tiempo de aciertos ½ a 1 ciclo de reloj
Penalización de fallos 10-30 ciclos de reloj
Tasa de fallos 0,01% - 1%
Tamaño TLB 32 – 1.024 entradas

Facultad de Informática. Universidad de Murcia. 19


Memoria Virtual Computadores

TLB Y CACHÉ PARA LA DECSTATION 3100

• EL TLB SE INCLUYE EN EL MICROPROCESADOR


• EL TLB ES COMPARTIDO POR LAS REFERENCIAS A
DATOS E INSTRUCCIONES
• EL TLB CONTIENE 64 ENTRADAS
• LAS PÁGINAS SON DE 4K
• TRATAMIENTO DE LOS FALLOS DEL TLB POR
SOFTWARE

31 30 29 15 14 13 12 11 10 9 8 3210
Virtual page number Page offset
20 12

Valid Dirty Tag Physical page number

TLB

TLB hit

20

Physical page number Page offset


Physical address
Physical address tag Cache index Byte
offset
16 14 2

Valid Tag Data

Cache

32

Cache hit Data

Facultad de Informática. Universidad de Murcia. 20


Memoria Virtual Computadores

LECTURA O ESCRITURA CON EL TLB Y CACHÉ PARA LA DECSTATION 3100


V irtua l a dd re ss

T L B a cc e ss

T L B m is s No Yes
T L B h it?
e xc ep tion P h ys ic al a dd re ss

No Yes
W rite ?

T ry to re ad da ta
from c ac h e No W rite a cc es s Y es
b it on ?

W rite p rote c tio n


ex c ep tio n W rite d ata into c a ch e,
No Yes up da te th e tag , a nd p ut
C a ch e m iss s ta ll C ac he h it? th e d ata a nd th e ad dre s s
in to th e w rite bu ffe r

D eliv er da ta
to the C P U

Facultad de Informática. Universidad de Murcia. 21


Memoria Virtual Computadores

IMPLEMENTACIÓN DE LA PROTECCIÓN CON


MEMORIA VIRTUAL

• CADA PROCESO TIENE SU PROPIO ESPACIO DE


DIRECCIONES VIRTUALES, PERO LA MEMORIA
FÍSICA ES COMPARTIDA POR TODOS LOS PROCESOS
Y POR EL S.O.

• NO SE DEBE PERMITIR QUE UN PROCESO PUEDA


ACCEDER AL ESPACIO DE DIRECCIONES DE
CUALQUIER OTRO PROCESO

• CADA PROCESO POSEE SU PROPIA TABLA DE


PÁGINAS

• LOS PROCESOS NO DEBEN PODER MODIFICAR LAS


TABLAS DE PÁGINAS

• SI EL S.O. ASEGURA QUE LAS PÁGINAS VIRTUALES


DE LOS PROCESOS CORRESPONDEN A DISTINTAS
PÁGINAS FÍSICAS, UN PROCESO NO PODRÁ ACCEDER
A LOS DATOS DE OTRO

Facultad de Informática. Universidad de Murcia. 22


Memoria Virtual Computadores

IMPLEMENTACIÓN DE LA PROTECCIÓN CON


MEMORIA VIRTUAL

• EL HARDWARE DEBE PROPORCIONAR LAS TRES


CAPACIDADES BÁSICAS RESUMIDAS ABAJO PARA
QUE EL S.O. IMPLEMENTE LA PROTECCIÓN EN EL
SISTEMA DE MEMORIA VIRTUAL

- DOS MODOS DE FUNCIONAMIENTO

Ø PROCESO DE USUARIO

Ø PROCESO S.O.
(NÚCLEO, SUPERVISOR O EJECUTIVO)

- INFORMACIÓN SOBRE EL ESTADO DE LA CPU QUE


UN PROCESO PUEDA LEER PERO NO ESCRIBIR: BITS
DE MODO USUARIO/SUPERVISOR Y PUNTERO A LA
TABLA DE PÁGINAS

- MECANISMOS PARA QUE LA CPU PASE DE MODO


USUARIO A MODO SUPERVISOR Y VICEVERSA
(LLAMADA AL SISTEMA, SYSCALL EN MIPS)

CON ESTOS MECANISMOS EL S.O. PUEDE CAMBIAR LAS


TABLAS DE PÁGINAS E IMPEDIR QUE UN PROCESO DE
USUARIO PUEDA HACERLO, ASEGURANDO QUE SÓLO
MANIPULARÁ LA MEMORIA QUE LE CONCEDE EL S.O.

Facultad de Informática. Universidad de Murcia. 23


Memoria Virtual Computadores

CARACTERÍSTICAS DE LA MEMORIA VIRTUAL EN ALGUNOS SISTEMAS ACTUALES


Characteristic Intel Pentium Pro PowerPC 604
Virtual address 32 bits 52 bits
Physical address 32 bits 32 bits
Page size 4 KB, 4 MB 4 KB, selectable, and 256 MB
TLB organization A TLB for instructions and a TLB for data A TLB for instructions and a TLB for data
Both four-way set associative Both two-way set associative
Pseudo-LRU replacement LRU replacement
Instruction TLB: 32 entries Instruction TLB: 128 entries
Data TLB: 64 entries Data TLB: 128 entries
TLB misses handled in hardware TLB misses handled in hardware

UN MARCO COMÚN PARA LAS JERARQUÍAS DE MEMORIA


Valores típicos
Característica Caché Memoria Principal TLB
Tamaño en bloques 250 – 10000 2000 – 250000 32 – 1024
Tamaño en bytes 4K – 4M 8M – 1G 128 – 8000
Tamaño de bloque en bytes 4 - 256 4K – 16K 4 – 16
Penalización de fallos(ciclos de reloj) 10 - 100 100000 – 1000000 10 – 50
Tasa de fallos 0,1% - 20% 0,00001% - 0,0001% 0,01% - 1%

Facultad de Informática. Universidad de Murcia. 24

También podría gustarte