miércoles

2.4 Concurrencia y secuenciabilidad.

Los procesos son concurrentes si existen simultáneamente. Los procesos concurrentes pueden funcionar en forma totalmente independiente unos de otros, o pueden ser asíncronos, lo cual significa que en ocasiones requieren cierta sincronización o cooperación. Cuando dos o más procesos llegan al mismo tiempo a ejecutarse, se dice que se ha presentado una concurrencia de procesos. Es importante mencionar que para que dos o más procesos sean concurrentes, es necesario que tengan alguna relación entre ellos como puede ser la cooperación para un determinado trabajo o el uso de información o recursos compartidos, por ejemplo: en un sistema de un procesador, la multiprogramación es una condición necesaria pero no suficiente para que exista concurrencia, ya que los procesos pueden ejecutarse de forma totalmente independiente.


Por otro lado en un sistema de varios procesos se puede presentar la concurrencia siempre y cuando las actividades necesiten actuar entre si ya sea para utilizar información en común o para cualquier otra cosa.

Existen tres formas modelos de computadora en los que se puede pueden ejecutar procesos concurrentes:

Multiprogramacion con un único procesador.

En este modelo todos los procesos concurrentes ejecutan sobre un único procesador. El sistema operativo se encarga de ir repartiendo el tiempo del procesador entre los distintos procesos, intercalando la ejecución de los mismos para dar así una apariencia de ejecución simultanea.

Multiprocesador.

Es una maquina formada por un conjunto de procesadores que comparten memoria principal. En este tipo de arquitecturas, los procesos concurrentes no solo pueden intercalar su ejecución sino también superponerla.

Multicomputadora.

Es una maquina de memoria distribuida, en contraposición con el multiprocesador que es de memoria compartida. Esta formada por una serie de computadoras completas con su UCP, memoria principal y, en su caso, periferia. Cada uno de estos procesadores completo se denomina nodo. Los nodos se encuentran conectados y se comunican entre si a través de una red de interconexion, empleando el método de paso de mensajes.
Beneficios de la concurrencia
- Trata de evitar los tiempos muertos de la UCP
- Comparte y optimiza el uso de recursos
- Permite la modularidad en las diferentes etapas del proceso
- Acelera los cálculos
- Da mayor comodidad

Desventajas de la concurrencia
- Inanición e interrupción de procesos
- Ocurrencia de bloqueos
- Que dos o más procesos requieran el mismo recurso (no apropiativo)


No hay comentarios.:

Publicar un comentario