PROGRAMACIÓN CONCURRENTE

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
PROGRAMACIÓN CONCURRENTE por Mind Map: PROGRAMACIÓN CONCURRENTE

1. PROGRAMAS CONCURRENTES

1.1. Define un conjunto de acciones que pueden ser ejecutadas simultáneamente.

1.2. CONDICIONES DE BERNSTEIN

1.2.1. Condiciones para que dos conjuntos de instrucciones se puedan ejecutar concurrentemente

1.2.2. Conjunto de lectura: instrucciones que cuentan con a las que se accede en modo lectura

1.2.3. Conjunto de escritura: instrucciones que cuentan con a las que se accede en modo escritura

2. DEFINICIÓN

2.1. Existencia simultánea de varios procesos en ejecución

2.2. Acaecimiento o concurso de varios sucesos en un mismo tiempo

3. PROGRAMA Y PROCESO

3.1. PROCESO: un programa en ejecución

3.1.1. PROCESO: algo activo en el sistema que cuenta con recursos asociados a el.

3.2. PROGRAMA: conjunto de instrucciones

3.2.1. PROGRAMA: algo pasivo, hay que ejecutarlo para hacer algo

3.2.2. Un programa en ejecución puede dar lugar a varios procesos.

3.3. Dos procesos serán concurrentes cuando la primera instrucción de uno se ejecuta después de la primera y antes de la última

3.4. No confundir solapamiento con la ejecución simultánea, eso se llama, programación paralela.

4. CARACTERÍSTICAS

4.1. Se encarga de estudiar las notaciones que permiten especificar la ejecución concurrente de las acciones de un programa, también las técnicas para resolver los problemas de la ejecución.

4.2. BENEFICIOS

4.2.1. Mejor aprovechamiento de la CPU (Aprovechar los ciclos de la CPU)

4.2.2. Velocidad de ejecución (Repartir entre procesadores o gestionarse en un único procesador))

4.2.3. Solución a problemas de naturaleza de concurrencia (Sistemas de control, Tecnologías web, Aplicaciones basadas en GUI, Simulación, SGBD)

4.3. INCONVENIENTES

4.3.1. Exclusión mutua. Varios procesos acceden a una variable compartida para actualizarla. Inconsistencia de datos.

4.3.1.1. Región crítica. Dos o más procesos comparten una variable, el acceso a dicha variable debe efectuarse siempre en esta región que va asociada a la variable.

4.3.2. Condición de sincronización. Necesidad de coordinar procesos con el find e sincronizas sus actividades

4.3.2.1. La programación concurrente proporciona mecanismos para bloquear procesos a la espera de que ocurra un evento y desbloquearlo