Volver al temario
Tema 04 · 70 páginas

Comunicación y sincronización

Tema completo Modo estudio
TEXTO ORIGINAL · Páginas 4950 Ver PDF

Resumen

Texto íntegro de la conversión. Las figuras y la disposición de las notas se pueden consultar en el PDF.

Página 49

Resumen

En este módulo didáctico hemos estudiado con detenimiento el problema de la sincronización de diferentes procesos y hemos ofrecido una idea de cómo se solucionan los problemas de comunicación de procesos y los interbloqueos (deadlocks).

Hemos visto que en la ejecución concurrente de procesos la sincronización es necesaria cuando éstos acceden a recursos compartidos (principalmente, dispositivos y variables compartidas). Sin una sincronización adecuada, la ejecución concurrente, al entrelazar la ejecución de varios procesos, puede producir errores de temporización y puede dejar el sistema inconsistente. Las causas de estas irregularidades dependen del recurso compartido. Así, tenemos las causas siguientes:

  • En el caso de variables compartidas, la principal causa de este problema es la existencia de copias temporales por parte de los procesos concurrentes.

  • En el caso de los dispositivos compartidos, una sincronización incorrecta puede provocar problemas de interbloqueo.

Para solucionar los problemas que surgen en el momento de sincronizar los procesos se han estudiado con detalle los semáforos, un mecanismo que permite la sincronización de manera sencilla. El principal problema que presentan es que el programador es el responsable de su buena utilización. Los programadores tienen que hacer un buen uso para evitar problemas de deadlock y de inanición.

También hemos visto el mecanismo de paso de mensajes, que, además de permitir la sincronización, también posibilita la comunicación de información entre procesos cooperativos y el mecanismo de las señales software. Finalmente, hemos descrito el problema del interbloqueo de procesos (deadlock).

Página 50

Ver fragmento extraído sin normalizar
## Página 49

<!-- source-page: 49 -->

GNUFDL • PID_00214803                                                                                  49                                                                                         Comunicación y sincronización

Resumen







En este módulo didáctico hemos estudiado con detenimiento el problema de
la sincronización de diferentes procesos y hemos ofrecido una idea de cómo
se solucionan los problemas de comunicación de procesos y los interbloqueos
(deadlocks).


Hemos visto que en la ejecución concurrente de procesos la sincronización es
necesaria cuando éstos acceden a recursos compartidos (principalmente, dis-
positivos y variables compartidas). Sin una sincronización adecuada, la ejecu-
ción concurrente, al entrelazar la ejecución de varios procesos, puede producir
errores de temporización y puede dejar el sistema inconsistente. Las causas de
estas irregularidades dependen del recurso compartido. Así, tenemos las cau-
sas siguientes:


•    En el caso de variables compartidas, la principal causa de este problema es
     la existencia de copias temporales por parte de los procesos concurrentes.


•    En el caso de los dispositivos compartidos, una sincronización incorrecta
     puede provocar problemas de interbloqueo.


Para solucionar los problemas que surgen en el momento de sincronizar los
procesos se han estudiado con detalle los semáforos, un mecanismo que per-
mite la sincronización de manera sencilla. El principal problema que presen-
tan es que el programador es el responsable de su buena utilización. Los pro-
gramadores tienen que hacer un buen uso para evitar problemas de deadlock
y de inanición.


También hemos visto el mecanismo de paso de mensajes, que, además de per-
mitir la sincronización, también posibilita la comunicación de información
entre procesos cooperativos y el mecanismo de las señales software. Finalmen-
te, hemos descrito el problema del interbloqueo de procesos (deadlock).

## Página 50

<!-- source-page: 50 -->



Descargar Markdown originalEstudiar este apartado