Filosofos en java
M.C. Yalu Galicia Hdez.
1
M.C. Yalu Galicia Hdez.
2
La aproximación más básica a la comunicación entre procesos es elpaso de mensajes. En este paradigma los datos que representan mensajes se intercambian entre dos procesos: Un emisor y un receptor
El paso de mensajes es el paradigma fundamental para las aplicacionesdistribuidas.
Dos hilos en diferentes espacios de memoria (diferentes VJM) que necesitan sincronizar o comunicar datos, no pueden usar semáforos o monitores; ellos deben usar paso de mensajes.
Unproceso envía un mensaje que representa una petición. El mensaje se entrega a un receptor, que procesa la petición y envía un mensaje como respuesta. En secuencia, la réprica puede dispararposteriores peticiones, que llevan a sucesivas respuestas y así en adelante
M.C. Yalu Galicia Hdez.
3
M.C. Yalu Galicia Hdez.
4
Send (to, mensaje)
Envía un mensaje
El paso de mensaje puedeser:
Síncrono: Bloqueante
Si recieve es bloquente y no hay mensaje disponible, el receptor se bloqueará hasta que uno llegue Si send es bloqueante, el emisor se bloqueará si no hay un receptor listopara recibir el mensaje.
Receive (from, mensaje)
Recibe un mensaje. Si no hay mensajes disponibles se bloquea
Si los procesos A y B desean comunicarse:
Debe establecerse un enlace decomunicación Los términos puerto, canal y buzón son usados para describir dónde los mensajes son enviados o desde dónde son recibidos
Asíncrono: No bloqueante
Si send es no bloqueante, un emisor regresará elcontrol inmediatamente después que el mensaje es encolado por el sistema de mensajes Si el receive en no bloqueante, un receptor regresará un indicador de error si no hay mensajes disponibles
Unenlace de comunicación tiene:
Implementación física (bus, memoria, etc.) Implementación lógica (sockets)
M.C. Yalu Galicia Hdez.
Condicional
En el paso de mensaje condicional, el mensaje...
Regístrate para leer el documento completo.