Sei sulla pagina 1di 2

Jerarqua de memoria

La jerarqua de memoria es la organizacin piramidal de la memoria en niveles que tienen las


computadoras.
El objetivo es conseguir el rendimiento de una memoria de gran velocidad al coste de una memoria
de baja velocidad, basndose en el principio de cercana de referencias.
Los puntos bsicos relacionados con la memoria pueden resumirse en:

Capacidad
Velocidad
Coste por bit

La cuestin de la capacidad es simple, cuanto ms memoria haya disponible, ms podr utilizarse.


La velocidad ptima para la memoria es la velocidad a la que el microprocesador puede trabajar, de
modo que no haya tiempos de espera entre clculo y clculo, utilizados para traer operandos o
guardar resultados.
En suma, el coste de la memoria no debe ser excesivo, para que sea factible construir un equipo
accesible.
Los tres factores compiten entre s, por lo que hay que encontrar un equilibrio.
Las siguientes afirmaciones son vlidas:

A menor tiempo de acceso mayor coste.


A mayor capacidad menor coste por bit.
A mayor capacidad menor velocidad.

Se busca entonces contar con capacidad suficiente de memoria, con una velocidad que sirva para
satisfacer la demanda de rendimiento y con un coste que no sea excesivo.
Gracias a un principio llamado cercana de referencias, es factible utilizar una mezcla de los distintos
tipos y lograr un rendimiento cercano al de la memoria ms rpida.
Niveles jerrquicos
Los niveles que componen la jerarqua de memoria habitualmente son:

Nivel 0: Registros del microprocesador o CPU


Nivel 1: Memoria cach
Nivel 2: Memoria primaria (RAM)
Nivel 3: Memorias flash
Nivel 4: Disco duro (con el mecanismo de memoria virtual)
Nivel 5: Cintas magnticas (consideradas las ms lentas, con mayor capacidad, de acceso
secuencial)
Nivel 6: Redes (actualmente se considera un nivel ms de la jerarqua de memorias)

Gestin de memorias
Los lenguajes de programacin actuales generalmente asumen la existencia de nicamente dos
niveles de memoria: memoria primaria y memoria secundaria (normalmente en disco). En lenguaje
ensamblador, ensamblador en lnea, y lenguajes como C y C++, se pueden direccionar datos
directamente a los registros de la CPU.

Para aprovechar de forma ptima las ventajas de la jerarqua de memoria es necesaria la


cooperacin entre programadores, compiladores y fabricantes de hardware:

Programadores: deben ser responsables del movimiento entre memoria principal y disco mediante el
uso de ficheros.
Hardware: el movimiento de datos entre la memoria principal y los niveles de cach es realizado por
algoritmos de hardware.
Compiladores: son responsables de optimizar el cdigo de modo que el uso de los registros y la
cach sea eficiente.

Potrebbero piacerti anche