Sistemas operativos modernos

Publicar/suscribir Nuestro siguiente ejemplo de modelo basado en coordinación está inspirado en Linda y se de­ nomina publicar/suscribir (Oki et a i, 1993). Este modelo consiste en varios procesos conec­ tados mediante una red de difusión. Cada proceso puede ser un productor de información, un consumidor de información o ambas cosas. Cuando un productor de información tiene un nuevo elemento de información (por ejemplo, una nueva cotización de acciones), difunde la información por la red en forma de tupia. Esta ac­ ción se denomina publicar. Cada tupia contiene una línea de tema jerárquica, constituida por varios campos separados por puntos. Los procesos interesados en cierta información pueden suscribirse a ciertos temas, e incluso utilizar comodines en la línea de tema. La suscripción se efectúa indicando los temas que debe buscar un proceso demonio de tupias que revisa las tupias publicadas en la misma máquina. Publicar/suscribir se implementa como se ilustra en la figura 8-43. Cuando un proceso quiere publicar una tupia, la difunde por la LAN local. El demonio de tupias de cada máquina copia en su RAM todas las tupias difundidas, luego examina la línea de tema para ver cuáles procesos están interesados en ella, y envía una copia a cada uno. Las tupias también pueden difundirse por una WAN o por Internet, haciendo que una máquina de cada LAN actúe como enrutador de información, juntando todas las tupias publicadas y remitiéndolas a otras LANs para que las difundan. Este reenvío también puede efectuarse de forma inteligente, remitiendo una tupia a una LAN remota sólo si esa LAN remota tiene al menos un suscriptor que la de­ see. Para ello es necesario que los enrutadores de información intercambien información acer­ ca de los suscriptores. Productor Enrutador de información Figura 8-43. La arquitectura publicar/suscribir. Pueden impiementarse diversos tipos de semánticas, incluidos entrega confiable y entrega garantizada, aunque falle el sistema. En este último caso, es necesario almacenar las tupias vie­ jas por si se les necesita después. Una forma de hacerlo es conectar un sistema de bases de da­ tos al sistema y programarlo para que se suscriba a todas las tupias. Esto puede hacerse envolviendo el sistema de bases de datos en un adaptador para que una base de datos existen

RkJQdWJsaXNoZXIy MjI4NDcx