Este documento describe varios problemas clásicos de comunicación entre procesos, como el problema de la sección crítica, el problema del productor-consumidor y la comunicación cliente-servidor. También presenta soluciones al problema de los filósofos cenando y al problema de los lectores y escritores, que implican la sincronización de procesos que comparten recursos.
0 calificaciones0% encontró este documento útil (0 votos)
138 vistas15 páginas
Este documento describe varios problemas clásicos de comunicación entre procesos, como el problema de la sección crítica, el problema del productor-consumidor y la comunicación cliente-servidor. También presenta soluciones al problema de los filósofos cenando y al problema de los lectores y escritores, que implican la sincronización de procesos que comparten recursos.
Este documento describe varios problemas clásicos de comunicación entre procesos, como el problema de la sección crítica, el problema del productor-consumidor y la comunicación cliente-servidor. También presenta soluciones al problema de los filósofos cenando y al problema de los lectores y escritores, que implican la sincronización de procesos que comparten recursos.
Este documento describe varios problemas clásicos de comunicación entre procesos, como el problema de la sección crítica, el problema del productor-consumidor y la comunicación cliente-servidor. También presenta soluciones al problema de los filósofos cenando y al problema de los lectores y escritores, que implican la sincronización de procesos que comparten recursos.
Descargue como PPTX, PDF, TXT o lea en línea desde Scribd
Descargar como pptx, pdf o txt
Está en la página 1de 15
PROBLEMAS CLASICOS DE
COMUNICACION ENTRE PROCESOS Un proceso independiente es aquel que ejecuta sin requerir la ayuda o cooperación de otros procesos.
Los procesos son cooperantes cuando están diseñados
para trabajar conjuntamente en alguna actividad, para lo que deben ser capaces de comunicarse e interactuar entre ellos. Interacciones motivadas porque los procesos comparten o compiten por el acceso a recursos físicos o lógicos. Interacción motivada porque los procesos se comunican y sincronizan entre sí para alcanzar un objetivo común.
La interacción entre procesos se plantea en una serie de
situaciones clásicas de comunicación y sincronización. EL PROBLEMA DE LA SECCIÓN CRÍTICA La característica más importante de este sistema es que cuando un proceso se encuentra ejecutando código de la sección crítica, ningún otro proceso puede ejecutar en su sección. Este mecanismo debe proteger el código de la sección crítica y su funcionamiento básico es el siguiente:
Cada proceso debe solicitar permiso para entrar en la sección
crítica mediante algún fragmento de código, que se denomina de forma genérica entrada en la sección crítica.
Cuando un proceso sale de la sección crítica debe indicarlo
mediante otro fragmento de código, que se denomina salida de la sección crítica. EL PROBLEMA DEL PRODUCTOR- CONSUMIDOR El compilador hace las funciones de productor al generar el código ensamblador que consumirá el proceso ensamblador para generar el código máquina. El problema de los lectores-escritores: En este problema existe un determinado objeto que puede ser un archivo, un registro dentro de un archivo, etc., que va a ser utilizado y compartido por una serie de procesos concurrentes. COMUNICACIÓN CLIENTE-SERVIDOR El proceso servidor puede residir en la misma máquina que el cliente o en una distinta, en cuyo caso la comunicación deberá realizarse a través de una red de interconexión. SOLUCIONES. Primera Solución Representar cada palillo con un semáforo Un filósofo trata de tomar un palillo ejecutando una operación espera con ese semáforo, y suelta sus palillos ejecutando la operación señal con los semáforos apropiados. Inicialmente todos los elementos de palillo están en 1 Garantiza que dos vecinos no estarán comiendo simultáneamente Posibilidad de bloqueo mutuo Suponga que los cinco filósofos sienten hambre simultáneamente y cada uno toma su palillo izquierdo Posibles soluciones al problema de bloqueos Problemas de los lectores y escritores.
Solución por monitores
Distinguir entre los tres estados en los que podría estar un filósofo è Pensando, hambriento y comiendo Definir el estado del mismo filósofo Restricciones
Sólo se permite que un escritor tenga acceso al objeto al mismo
tiempo. Mientras el escritor esté accediendo al objeto, ningún otro proceso lector ni escritor podrá acceder a él. Se permite que múltiples lectores tengan acceso al objeto, ya que ellos nunca van a modificar el contenido del mismo