Programacion Concurrente
• Las sentencias de un programa concurrente se ejecutan de acuerdo con un orden no estricto.
• La secuencialización de un programa concurrente es entre hitos o puntos de sincronización.
• Un programa concurrente se suele concebir como un conjuntode procesos quecolaboran y compiten entre sí. • Para validar un programa concurrente: Las operaciones se pueden validar individualmente si las variables no son actualizadas concurrentemente. El resultado debeser independiente de los tiempos de ejecución de las sentencias. El resultado debe ser independiente de la plataforma en que se ejecuta.
Aplicaciones de Programas concurrentes: •Aplicaciones clásicas: Programación de sistemas multicomputadores. Sistemasoperativos. Control y monitorización de sistemas físicos. • Aplicaciones actuales: Servicios WEB. Sistemas multimedia. Cálculo numérico. Procesamientos entrada/salida. Simulación de sistemas dinámicos. Interacción operador/máquina (GUIs) Tecnologías de componentes. Sistemas embebidos.
Ventajas de Programación concurrente: Proporciona el modelo más simple y natural de concebir muchas aplicaciones.• Facilita el diseño orientado a objetos de las aplicaciones, ya que los objetos reales son concurrentes. • Hace posible compartir recursos y subsistemas complejos. • En sistemas monoprocesadores optimiza el uso de los recursos. • Reduce tiempos de ejecución en plataformas multiprocesadoras. • Facilitala realización de programas fiables replicando componentes y/o procesos.
Programación en paralelo.- Es una técnica de programación en la que muchas instrucciones se ejecutan simultáneamente. Se basa en el principio de que los problemas grandes se pueden dividir en partes más pequeñas que pueden resolverse de forma paralela. La computación paralela se ha convertido en el paradigma dominante enla arquitectura de computadores, principalmente en los procesadores multinúcleo. Sin embargo, recientemente, el consumo de energía de los ordenadores paralelos se ha convertido en una preocupación.
Los ordenadores paralelos se pueden clasificar según el nivel de paralelismo que admite su hardware: los ordenadores multinúcleo y multiproceso tienen varios elementos de procesamiento en una sola...
Regístrate para leer el documento completo.