Programación concurrente

10

Click here to load reader

Transcript of Programación concurrente

Page 1: Programación concurrente

PROGRAMACIÓN CONCURRENTE

LENGUAJE DE PROGRAMACION

Carlos Javier Almanzar

Frandy Javier Álvarez

Page 2: Programación concurrente

HISTORIA DE LA PROGRAMACIÓN CONCURRENTE

La programación concurrente tiene sus raíces en los sistemas operativos.

En los años 60’s se introdujeron en las computadoras dispositivos controladores independientes de entrada-salida llamados canales.

La programación de sistemas con capacidades de concurrencia se hacía a bajo nivel, en ensamblador.

Page 3: Programación concurrente

HISTORIA DE LA PROGRAMACIÓN CONCURRENTE

Los pioneros en este campo fueron:

Edsger Wybe Dijkstra fue un científico de la computación de los Países Bajos.

Per Brinch Hansen fue un informático danés-estadounidense conocido por la teoría de la programación concurrente.

Charles Antony Richard Hoare también conocido familiarmente como Tony Hoare, es un científico británico en computación.

Page 4: Programación concurrente

PROGRAMACION CONCURRENTE

La programación concurrente es la simultaneidad en la ejecución de múltiples tareas interactivas. Estas tareas pueden ser un conjunto de procesos o hilos de ejecución creados por un único programa.

Page 5: Programación concurrente

MULTITAREA Y MULTIPROGRAMACIÓN

Page 6: Programación concurrente

MULTITAREAS

Es la capacidad de un sistema operativo para ejecutar varios procesos al mismo tiempo corriendo sobre un procesador. Con los sistemas operativos DOS esto era incapaz de realizarse.

Page 7: Programación concurrente

TIPOS DE MULTITAREA

Multitarea Nula (Usada cuando solo existía un procesador)

Multitarea Cooperativa (Usada por los sistemas operativos Windows antes de la versión 1995.

Multitarea Preferente (Usada por Windows en los años 2000)

Multitarea Real (Usada Actualmente)

Page 8: Programación concurrente

MULTIPROGRAMACIÓN

Es la técnica que permite que dos o más programas ocupen la misma unidad de memoria principal y que sean ejecutados al mismo tiempo.

Page 9: Programación concurrente

VENTAJAS DE LA PROGRAMACIÓN CONCURRENTE

Proporciona el modelo más simple y natural de concebir muchas aplicaciones.

Facilita el diseño orientado a objeto de las aplicaciones, ya que los objetos reales son concurrentes.

Hace posible compartir recursos y subsistema complejos. En sistemas monoprocesador permite optimizar el uso de los recursos.

Facilita la programación de tiempo real, ya que se pueden concebir como procesos cuya ejecución se planifican de acuerdo con la urgencia.

Permite reducir los tiempos de ejecución sobre plataformas multiprocesadoras.

Facilita la realización de programas fiables por despliegue dinámico de los procesos en los procesadores.

Page 10: Programación concurrente