JERARQUIA+DE+MEMORIA

{$page}

1. **INTRODUCCIÓN**

Los pioneros de los computadores predijeron correctamente que los programadores querrían cantidades ilimitadas de memoria rápida. Una jerarquía de memoria es una reacción natural a la localidad y tecnología. El principio de la localidad y la directriz que el hardware mas pequeño es más rápido mantienen el concepto de una jerarquía basada en diferentes velocidades y tamaños. Como la memoria mas lenta es la mas barata una jerarquía de memoria esta organizada en varios niveles, cada uno mas pequeño mas rápido y mas caro por byte que el nivel siguiente


 * 2. DESARROLLO**

 Una jerarquía de memoria normalmente consta de muchos niveles, peor en cada momento se gestiona entre dos niveles adyacentes.  Las limitaciones de diseño de la memoria de un computador se resumen en tres variables:
 * ¿Qué cantidad?
 * ¿Qué velocidad?
 * ¿Qué costo?

Estas tres características compiten entre si y generalmente se cumplen las siguientes relaciones:
 * A menor tiempo de acceso, mayor costo por bit.
 * A mayor capacidad, menor costo por bit.
 * A mayor capacidad, mayor tiempo de acceso.

En la jerarquía de memoria se reconoce los siguientes niveles:
 * Ø En la cúspide esta los registros de la CPU a los que puede tenerse acceso a la velocidad máxima del CPU
 * Ø Memoria cache que actualmente es el orden de 32k a unos cuantos megabytes
 * Ø Memoria principal con tamaños que actualmente van de los 16M hasta decenas de gigabytes
 * Ø <span style="font-family: Arial,sans-serif; font-size: 12pt;">Discos magnéticos para el almacenamiento permanente
 * Ø <span style="font-family: Arial,sans-serif; font-size: 12pt;">Cinta magnética y discos ópticos para el almacenamiento de archivos

**Figura 1:** Jerarquía de la Memoria ** Fuente **<span style="font-family: Arial,sans-serif; font-size: 12pt;">: [] <span style="font-family: Arial,sans-serif; font-size: 12pt;">Al bajar por la jerarquía 3 parámetros clave crecen:

**<span style="font-family: Arial,sans-serif; font-size: 12pt;">Primero.- **<span style="font-family: Arial,sans-serif; font-size: 12pt;"> El tiempo de acceso se alarga, los registros de la CPU se puede acceder en nanosegundos, la memoria cache requiere un múltiplo pequeño del tiempo de acceso de los registros, los tiempos de acceso a el disco magnético es de por lo menos 10ms,y el acceso a cinta y a óptico se puede medir en segundos.

**<span style="font-family: Arial,sans-serif; font-size: 12pt;">Segundo.- **<span style="font-family: Arial,sans-serif; font-size: 12pt;"> la capacidad de almacenamiento aumenta al bajar la jerarquía, los registros tienen por lo menos tienen 128 bytes, los caches a unos megabytes, las memorias principales decenas o miles de megabytes, los discos magnéticos de unos a decenas de gigabytes, la cinta y los discos ópticos se guardan fuera de línea ósea su límite depende del propietario.

**<span style="font-family: Arial,sans-serif; font-size: 12pt;">Tercero.- **<span style="font-family: Arial,sans-serif; font-size: 12pt;"> el número de bits que se obtiene por dólar invertido aumenta al bajar la jerarquía, la memoria principal se mide en dólares/megabytes, almacenamiento de disco centavos de dólar/megabyte, y la cinta en dólares/gigabyte

**<span style="font-family: Arial,sans-serif; font-size: 12pt;">REGISTROS ** <span style="font-family: Arial,sans-serif; font-size: 12pt;">Los Registros son un medio de ayuda a las operaciones realizadas por la unidad de control y la unidad aritmética y lógica. Permiten almacenar información, temporalmente, para facilitar la manipulación de los datos por parte de la CPU. <span style="font-family: Arial,sans-serif; font-size: 12pt;">Realizando una similitud con el resto del sistema informático, los registros son a la CPU como la memoria principal es a la computadora. <span style="font-family: Arial,sans-serif; font-size: 12pt;">Los registros se dividen en tres grupos principales: <span style="font-family: Arial,sans-serif; font-size: 12pt;">• Registros de Propósito General. <span style="font-family: Arial,sans-serif; font-size: 12pt;">• Registros de Segmento de Memoria. <span style="font-family: Arial,sans-serif; font-size: 12pt;">• Registros de Instrucciones.

**<span style="font-family: Arial,sans-serif; font-size: 12pt;">MEMORIA CACHE ** <span style="font-family: Arial,sans-serif; font-size: 12pt;">Cache es el nombre escogido para representar el nivel de jerarquía de memoria entre la CPU y memoria principal, y este es el uso dominante del término. Hoy en día aparecen caches en toda clase de computadoras y en algunos computadores más de una vez <span style="font-family: Arial,sans-serif; font-size: 12pt;">En la cache se guardan las palabras de memoria de mayor uso, cuando la CPU necesita una palabra primero lo busca en la cache. Solo si la palabra no esta ahí recurre a la memoria principal, esto mejora el tiempo de acceso a los programas que se quiere usar. **Figura 2:** Memoria cache

** Fuente: **[] <span style="font-family: Arial,sans-serif; font-size: 12pt;">El diseño de caches es un tema cada vez mas importante para el diseño de la CPU de alto rendimiento. Un aspecto es el tamaño del cache. Cuanto mas grande es el cache mejor funciona, pero también cuesta mas <span style="font-family: Arial,sans-serif; font-size: 12pt;">Un segundo aspecto es el tamaño dela línea de cache un cache de 16kb puede dividirse en 1k líneas de 16 bytes, 2k líneas de 8 bytes y otras combinaciones <span style="font-family: Arial,sans-serif; font-size: 12pt;">Un tercer aspecto es la organización del cache <span style="font-family: Arial,sans-serif; font-size: 12pt;">Un cuarto aspecto es si las instrucciones y los datos se guardan en el mismo o en caches diferentes

<span style="font-family: Arial,sans-serif; font-size: 12pt;">La memoria principal satisface las demandas de las caches y unidades vectoriales y sirve como interfaz de entrada y salida ya que es el destino de la entrada así como la fuente para la salida, las medidas de rendimiento de la memoria principal hacen énfasis a la latencia y al ancho de banda
 * <span style="font-family: Arial,sans-serif; font-size: 12pt;">MEMORIA PRINCIPAL **

**<span style="font-family: Arial,sans-serif; font-size: 12pt;">DISCO MAGNETICO ** <span style="font-family: Arial,sans-serif; font-size: 12pt;">Un disco magnético consiste en uno o más platos de aluminio con un recubrimiento magnetizable. Originalmente estos platos llegaron a tener 50 cm de diámetro, pero en la actualidad suelen ser de 3 a 12 cm, y algunos discos para computadoras portátiles tienen diámetros de menos de 3cm y se siguen encogiendo. Una cabeza de disco contiene una bobina de inducción flota sobre la superficie y muy cerca de ella, descansando en un colchón de aire. Cuando una corriente positiva o negativa pasa por la cabeza, magnetiza la superficie justo debajo de ella, alineando las partículas magnéticas hacia la izquierda o hacia la derecha, dependiendo de la polaridad de la corriente de la unidad. <span style="font-family: Arial,Helvetica,sans-serif; font-size: 130%;">El objetivo de estructurar la memoria de un computador como una jerarquía es conseguir una memoria relativamente grande y rápida a un precio no muy alto. El funcionamiento de la jerarquía de memoria se basa en hacer copias de información de los niveles mas lentos y grandes a los niveles mas rápidos en los que se necesita. Así, por ejemplo, cuando se requiere ejecutar un programa hay que copiar las instrucciones y datos del mismo, que se encuentra en disco (en el fichero ejecutable) a memoria principal. De igual forma, el procesador a medida que va accediendo a memoria caché, provoca que la información necesaria, en forma de lineas de cache, se copie de memoria principal a memoria caché. Finalmente hay muchas instrucciones que necesitan que la información resida en los registros del procesador, esto hace que haya que copiar información de la memoria caché a los registros. <span style="font-family: Arial,sans-serif; font-size: 12pt;">En el acceso a un nivel de la jerarquía se produce un fallo cuando el dato referenciado no se encuentra en ese nivel. Se dice que hay un acierto en caso contrario. La existencia de un fallo requiere que los datos referenciados se copien del nivel inferior al nivel en el que se ha provocado el fallo. <span style="font-family: Arial,Helvetica,sans-serif; font-size: 130%;">La existencia de múltiples copias de un mismo dato en una jerarquía de memoria produce un problema de falta de coherencia. En efecto, cuando se modifica un dato en un nivel superior de la jerarquía, se produce una discrepancia con la copia del dato que se encuentra en el nivel inferior. Para resolver este problema es necesario que la información modificada en un nivel superior de la jerarquía se actualice en algun momento en el nivel inferior.


 * 3. REFERENCIAS** **BIBLIOGRÁFICAS**

<span style="font-family: Arial,sans-serif; font-size: 12pt;">Andrew S. Tanenbaum (2000), Organización de Computadoras un enfoque estructurado, Estado de México

<span style="font-family: Arial,sans-serif; font-size: 12pt;">John L. Hennessy y David A. Patterson (1993), Arquitectura de Computadoras un enfoque cuantitativo, Mcgraw-Hillpnteramericana De España

<span style="font-family: Arial,sans-serif; font-size: 12pt;">Félix García Carballeira (2008), Problemas Resueltos de Estructura de Computadores, Ediciones Spain Paraninfo, S.A.

<span style="font-family: Arial,sans-serif; font-size: 12pt;">Héctor Jairo Ortiz Pabón (2005), Sistemas Operativos Modernos, Universidad de Medellin.

(Estudiante: Nombre_Completo ) en fecha fecha de la edición Estudiante:Jumer Pablo Ramos Jacobo en fecha 5 de octubre del 2012 Estudiante: Raúl Cabrera Gómez en fecha 5 de octubre del 2012
 * Seguimiento de aportes: (*) Esto es para hacer un seguimiento de los aportes, copiar la linea siguiente cada ves que se edite, no borrar las existentes.**


 * AUTOR:** {$creator}

//Esta pagina fue editada {$pagerevisions} veces. La ultima modificación fue realizada por//

//user:{$revisioneditor} el {$revisiondate}//