COORDINACIÓN Y SINCRONIZACIÓN

COORDINACIÓN Y SINCRONIZACIÓN DE PROCESOS

En muchos casos, los procesos se reúnen para realizar tareas en conjunto, a este tipo de relación se le llama procesos cooperativos. Para lograr la comunicacion, los procesos deben sincronizarse, de no ser así pueden ocurrir problemas no deseados. La sincronizacion es la transmisión y recepción de señales que tiene por objeto llevar a cabo el trabajo de un grupo de procesos cooperativos.

La coordinación de procesos, es el hecho de ponerse de acuerdo entre varios procesos para llevar a cabo alguna acción. Esta acción puede ser el conseguir el derecho a entrar en una regíon crítica en exclusión mutua, o la elección de un proceso, entre un grupo de procesos, que actúe como coordinador de las actividades del resto de los procesos del grupo.

La Sincronización de Procesos es la coordinación y cooperación de un conjunto de procesos para asegurar la comparacion de recursos de computo. La sincronizacion entre procesos es necesaria para prevenir y/o corregir errores de sincronizacion debidos al acceso concurrente a recursos compartidos, tales como estructuras de datos o dispositivos de E/S, de procesos contendientes. La sincronizacion entre procesos tambien permite intercambiar senales de tiempo (ARRANQUE/PARADA) entre procesos cooperantes para garantizar las relaciones específicas de precedencia impuestas por el problema que se resuelve.

Sin una sincronizacion adecuada entre procesos, la actualización de variables compartidas puede inducir a errores de tiempo relacionados con la concurrencia que son con frecuencia dificiles de depurar. Una de las causas principales de este problema es que procesos concurrentes puedan observar valores temporalmente inconsistentes de una variable compartida mientras se actualizan. una aproximacion para resolver este problema es realizar actualizaciones de variables compartidas de manera mutuamente exclusiva. Se pueden mejorar permitiendo que a lo mas un proceso entre a la vez en la seccion critica de codigo en la que se actualiza una variable compartida o estructura de datos en particular.

Para que los procesos puedan sincronizarse es necesario disponer de servicios que permitan bloquear o suspender bajo determinadas circunstancias la ejecucion de un proceso. Los principales mecanismos de sincronización que ofrecen los sistemas operativos son:

  • Señales.
  • Tuberías.
  • Semáforos.
  • Mutex y variables condicionales.
  • Paso de mensajes.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




A %d blogueros les gusta esto: