Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Si ejecutamos un programa muy grande o un programa que accede a un conjunto de datos muy grande, todas las instrucciones y datos puedan ingresar en la memoria principal. La memoria virtual funciona como una cache para almacenamiento secundario.
Memoria Virtual(2)
Esta memoria explota el principio de localidad espacial y temporal. Esta memoria mantiene las partes activas de los programas en ejecucin en la memoria principal.
Memoria Virtual(3)
Espacio Swap aquellas partes que estn desocupadas son mantenidas en un bloque de almacenamiento secundario. Pginas Bloques de datos e instrucciones.
Normalmente estas son relativamente muy grandes. La mayora de los sistemas tienen un tamao fijo que comnmente ocupan rangos de 4 a 16 kilobytes.
programa A
programa B
programa C
Tabla de pgina
Tabla 2.2: Direccin virtual dividida en nmero de pgina virtual y byte traducido
Pipelining
Asumiendo que cada operacin toma un nanosegundo (10-9 segundos) Este bucle for toma aproximadamente 7000 nanosegundos.
Pipelining (3)
Divide el sumador de punto flotante en 7 piezas separadas de hardware o unidades funcionales. La primera unidad va por los dos operandos, la segunda unidad compara exponentes, etc. La salida de una unidad funcional es la entrada a la siguiente.
Pipelining (4)
Table 2.3: Suma con pipelining. Los nmeros en la tabla son subscripciones de operandos/resultados
Pipelining (5)
Una suma en punto flotante aun toma 7 nanosegundos. Pero 1000 sumas en punto flotante ahora toma 1006 nanosegundos.
Caso mltiple
En el caso mltiple, los procesadores replican las unidades funcionales e intentan simultneamente ejecutar diferentes instrucciones en un programa. for (i = 0; i < 1000; i++) z[i] = x[i] + y[i];
z[3] z[1] adder #1 z[4] z[2] adder #2
Caso mltiple(2)
Caso mltiple esttico las unidades funcionales son planificadas en tiempo de compilacin. Caso mltiple dinmico unidades funcionales son planificadas en tiempo de ejecucin.
superscalar
Especulacin(1)
En funcin de hacer uso de mltiples casos, el sistema debera encontrar instrucciones que puedan ser ejecutadas simultneamente. En la especulacin, el compilador o el procesador hacen una suposicin acerca de una instruccin y luego ejecuta las instruccin sobre la base de la suposicin.
Especulacin(2)
z=x+y; i f ( z > 0) w=x; else w=y;
Z ser positivo