Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ARQUITECTURAS RISC
- Alrededor del 20% de las instrucciones ocupa el 80% del tiempo total de
ejecución de un programa.
a) Transferencia.
b) Operaciones.
c) Control de flujo.
CISC (Complex Instruction Set Computer) Computadoras con un conjunto de instrucciones complejo.
RISC (Reduced Instruction Set Computer) Computadoras con un conjunto de instrucciones reducido.
La arquitectura CISC se refiere a los microprocesadores tradicionales que operan con grupos grandes
de instrucciones de procesador (lenguaje de maquina). Los microprocesadores INTEL 80xxx están
dentro de esta categoría (incluido el PENTIUM). Los procesadores CISC tienen un set de instrucciones
complejas por naturaleza que requieren varios a muchos ciclos para completarse.
La arquitectura RISC a diferencia de los CISC tiene un set de instrucciones simples requiriendo uno o
pocos ciclos de ejecución. Estas instrucciones pueden ser utilizadas más eficientemente que la de los
procesadores CISC con el diseño de software apropiado, resultando en operaciones más rápidas.
La computación paralela es una forma de cómputo en la que muchas instrucciones se
ejecutan simultáneamente,1 operando sobre el principio de que problemas grandes, a menudo
se pueden dividir en unos más pequeños, que luego son resueltos simultáneamente (en
paralelo). Hay varias formas diferentes de computación paralela: paralelismo a nivel de bit,
paralelismo a nivel de instrucción, paralelismo de datos y paralelismo de tareas. El paralelismo
se ha empleado durante muchos años, sobre todo en la computación de altas prestaciones,
pero el interés en ella ha crecido últimamente debido a las limitaciones físicas que impiden el
aumento de la frecuencia2Como el consumo de energía —y por consiguiente la generación de
calor— de las computadoras constituye una preocupación en los últimos años3 la computación
en paralelo se ha convertido en el paradigma dominante en la arquitectura de computadores,
principalmente en forma de procesadores multinúcleo4
Las computadoras paralelas pueden clasificarse según el nivel de paralelismo que admite
su hardware: equipos con procesadores multinúcleo y multi-procesador que tienen múltiples
elementos de procesamiento dentro de una sola máquina y los clústeres, MPPS y grids que
utilizan varios equipos para trabajar en la misma tarea. Muchas veces, para acelerar tareas
específicas, se utilizan arquitecturas especializadas de computación en paralelo junto a
procesadores tradicionales.
Los programas informáticos paralelos son más difíciles de escribir que los secuenciales,5
porque la concurrencia introduce nuevos tipos de errores de software, siendo las condiciones
de carrera los más comunes. La comunicación y sincronización entre diferentes subtareas son
algunos de los mayores obstáculos para obtener un buen rendimiento del programa paralelo.
La máxima aceleración posible de un programa como resultado de la paralización se conoce
como la ley de Amdahl.
SISTEMA DE MEMORIAS
La memoria de acceso aleatorio (Random Access Memory, RAM) se utiliza como memoria
de trabajo de computadoras y otros dispositivos para el sistema operativo, los programas y la
mayor parte del software. En la RAM se cargan todas las instrucciones que ejecuta la unidad
central de procesamiento (procesador) y otras unidades del computador, además de contener
los datos que manipulan los distintos programas.
Se denominan «de acceso aleatorio» porque se puede leer o escribir en una posición de
memoria con un tiempo de espera igual para cualquier posición, no siendo necesario seguir un
orden para acceder (acceso secuencial) a la información de la manera más rápida posible.
Durante el encendido de la computadora, la rutina POST verifica que los módulos de RAM
estén conectados de manera correcta. En el caso que no existan o no se detecten los
módulos, la mayoría de tarjetas madres emiten una serie de sonidos que indican la ausencia
de memoria principal. Terminado ese proceso, la memoria BIOS puede realizar un test básico
sobre la memoria RAM indicando fallos mayores en la misma.
Una EPROM
La memoria de solo lectura, conocida también como ROM (acrónimo en inglés de read-only
memory), es un medio de almacenamiento utilizado en ordenadores y dispositivos
electrónicos, que permite solo la lectura de la información y no su escritura,1
independientemente de la presencia o no de una fuente de energía.
Los datos almacenados en la ROM no se pueden modificar, o al menos no de manera rápida o
fácil. Se utiliza principalmente para contener el firmware2 (programa que está estrechamente
ligado a hardware específico, y es poco probable que requiera actualizaciones frecuentes) u
otro contenido vital para el funcionamiento del dispositivo, como los programas que ponen en
marcha el ordenador y realizan los diagnósticos.
En su sentido más estricto, se refiere solo a máscara ROM -en inglés, MROM- (el más antiguo
tipo de estado sólido ROM), que se fabrica con los datos almacenados de forma permanente,
y por lo tanto, su contenido no puede ser modificado de ninguna forma. Sin embargo, las ROM
más modernas, como EPROM y Flash EEPROM, efectivamente se pueden borrar y volver a
programar varias veces, aún siendo descritos como "memoria de solo lectura" (ROM). La
razón de que se las continúe llamando así es que el proceso de reprogramación en general es
poco frecuente, relativamente lento y, a menudo, no se permite la escritura en lugares
aleatorios de la memoria. A pesar de la simplicidad de la ROM, los dispositivos
reprogramables son más flexibles y económicos, por lo cual las antiguas máscaras ROM no se
suelen encontrar en hardware producido a partir de 2007.
En informática, la memoria virtual es una técnica de gestión de la memoria que permite que
el sistema operativo disponga, tanto para el software de usuario como para sí mismo, de
mayor cantidad de memoria que esté disponible físicamente. La mayoría de los ordenadores
tienen cuatro tipos de memoria: registros en la CPU, la memoria caché (tanto dentro como
fuera del CPU), la memoria RAM y el disco duro. En ese orden, van de menor capacidad y
mayor velocidad a mayor capacidad y menor velocidad.
Muchas aplicaciones requieren acceso a más información (código y datos) que la que se
puede mantener en memoria física. Esto es así sobre todo cuando el sistema operativo
permite múltiples procesos y aplicaciones ejecutándose simultáneamente. Una solución al
problema de necesitar mayor cantidad de memoria de la que se posee consiste en que las
aplicaciones mantengan parte de su información en disco, moviéndola a la memoria principal
cuando sea necesario. Hay varias formas de hacer esto.
Una opción es que la aplicación misma sea responsable de decidir qué información será
guardada en cada sitio (segmentación), y de traerla y llevarla. La desventaja de esto, además
de la dificultad en el diseño e implementación del programa, es que es muy probable que los
intereses sobre la memoria de dos o varios programas generen conflictos entre sí: cada
programador podría realizar su diseño teniendo en cuenta que es el único programa
ejecutándose en el sistema. La alternativa es usar memoria virtual, donde la combinación
entre hardware especial y el sistema operativo hace uso de la memoria principal y la
secundaria para hacer parecer que el ordenador tiene mucha más memoria principal (RAM)
que la que realmente posee. Este método es invisible a los procesos. La cantidad de memoria
máxima que se puede hacer ver que hay tiene que ver con las características del procesador.
Por ejemplo, en un sistema de 32 bits, el máximo es 232, lo que da 4096 Megabytes (4
Gigabytes). Todo esto hace el trabajo del programador de aplicaciones mucho más fácil, al
poder ignorar completamente la necesidad de mover datos entre los distintos espacios de
memoria.
Aunque la memoria virtual podría estar implementada por el software del sistema operativo, en
la práctica casi siempre se usa una combinación de hardware y software, dado el esfuerzo
extra que implicaría para el procesador.
1. Directivas de preprocesador
2. declaraciones globales
3. declaración de funciones
Directivas de preprocesador[editar]
Los compiladores de C++ proporcionan bibliotecas de funciones, y cada biblioteca de funciones
tiene asociada un archivo de definición que se denomina cabecera. Para utilizar algo de una
biblioteca en un programa (por ejemplo, una función), hay que colocar al principio del programa
una directiva de preprocesamiento seguida de la cabecera de la biblioteca entre signos de
"menor que" y "mayor que" (<>).
Siempre existe para verificar el logro de los objetivos que se establecen en la planeación.
Medición. Para controlar es imprescindible medir y cuantificar los resultados.
Detectar desviaciones. Una de las funciones inherentes al control, es descubrir las
diferencias que se presentan entre la ejecución y la planeación.
Establecer medidas correctivas. El objeto del control es prever y corregir los errores.
Factores de control; Cantidad, Tiempo, costo, Calidad.
Controlador: (Electrónica). Es un dispositivo electrónico que emula la capacidad de los seres
humanos para ejercer control. Por medio de cuatro acciones de control: compara, calcula,
ajusta y limita.
Proceso: operación o desarrollo natural progresivamente continúo, marcado por una serie de
cambios graduales que se suceden uno al otro en una forma relativamente fija y que conducen
a un resultado o propósito determinados. Operación artificial o voluntaria progresiva que
consiste en una serie de acciones o movimientos controlados, sistemáticamente dirigidos
hacia un resultado o propósito determinados. Ejemplos: procesos químicos, económicos y
biológicos.
Supervisión: acto de observar el trabajo y tareas de otro (individuo o máquina) que puede no
conocer el tema en profundidad.
Ejemplo 1: Un tanque con una manguera de jardín. Mientras que la llave siga abierta, el
agua fluirá. La altura del agua en el tanque no puede hacer que la llave se cierre y por
tanto no nos sirve para un proceso que necesite de un control de contenido o
concentración.
Ejemplo 2: Al hacer una tostada, lo que hacemos es controlar el tiempo de tostado de ella
misma entrando una variable (en este caso el grado de tostado que queremos). En
definitiva, el que nosotros introducimos como parámetro es el tiempo.
Estos sistemas se caracterizan por:
Software