Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: edr89 en 25 Enero 2015, 03:17 am



Título: Conceptos de Programación Concurrente
Publicado por: edr89 en 25 Enero 2015, 03:17 am
Hola resumo un poco de información que he encontrado, esperando que sea leida y corregida:

Concurrencia: Varias tareas se ejecutan de forma simultanea, compartiendo los recursos disponibles segun sea el caso. Se utiliza la asignación de tiempos alternando entre distintas tareas que ocurren todas a la vez.

Un programa concurrente es un conjunto de tareas secuenciales ejecutadas en paralelismo abstracto o real y puede incrementar la velocidad, eficiencia, desempeńo y tiempo de respuesta adaptándose a situaciones multitarea.

La programación concurrente  se puede clasificar por la forma en que se ejecuta en:
     - Multiprogramación (se cuenta con un solo procesador)
     - Programacion paralela (multiprocesador o multicomputadora)
     - Programación distribuida (red de estaciones de trabajo)

La asignación de tiempos se llama time-slicing.
La multiprogramación es un paralelismo abstracto porque el procesador asigna recursos a cada tarea.
En un paralelismo real el programa concurrente corre en una maquina con mas de un procesador (multicore)

saludos!