¿Qué es un mensaje activo?
Un mensaje activo (AM) es un tipo de comunicación entre procesos utilizada en la computación, por la cual la subrutina o función de un programa de computadora puede ser ejecutado por una computadora completamente diferente a la que reside. Este tipo de mensaje es de un formato tan fundamental que permite una mayor utilización del ancho de banda de red sobre los protocolos estándar de Internet (IP). También se considera un sistema de aprobación de mensajes asincrónicos, ya que se actúa inmediatamente en lugar de esperar un momento particular para sincronizar con el programa.
Con el modelo de comunicación de mensajería activa, gran parte del trabajo ocurre en el nivel de hardware donde el hardware interactúa con los controladores del sistema operativo. Siendo que este nivel inferior normalmente está reservado para el negocio del sistema operativo, los mensajes se construyen de tal manera que puedan llevar instrucciones para acceder a una secuencia de funciones de usuario de nivel superior. Dentro del encabezado de una AM está la dirección de lo que se hace referenciacomo manejador. El controlador es una instrucción especial a nivel de usuario que permite que el cuerpo del mensaje sea procesado por un cálculo que se ejecuta a través del procesador. El cuerpo de un mensaje activo, entonces, es el argumento de la función, o los datos sobre los que el cálculo debe actuar.
Dada la naturaleza esencial de la construcción de un mensaje activo, es capaz de pasar por los protocolos de comunicación de red IP existentes. Sin embargo, la principal diferencia es que se actúa instantáneamente en la recepción, en lugar de requerir un método de entrega de recibo y recepción de recepción de múltiples fases. De esta manera, un mensaje activo considera la red simplemente una tubería abierta para el recorrido. Sus únicas limitaciones son las de la red física, donde la distancia entre los nodos puede tener en cuenta la latencia de los mensajes.
La forma en que funciona un sistema de mensajes activo es por un remitente que llena la red con mensajes. No hay amortiguaciónEn el extremo receptor, cuya única respuesta a una AM es interrumpir brevemente su cálculo para el controlador del mensaje, tomar el mensaje de la red y continuar con su negocio. El único almacenamiento de mensajes de tiempo ocurre es en el extremo del remitente, donde los mensajes se mantienen en función de si la red está alcanzando sus límites. Un método de votación realiza pestañas en la red para que el sistema sepa cuándo inyectar más mensajes. Los mensajes activos permiten la superposición continua de los mensajes enviados con los cálculos que ocurren en máquinas remotas, así como mantenerlos a todos coordinados.
Si bien el método de mensaje activo puede ser de naturaleza simple, enfrenta algunos problemas con respecto a la implementación. A pesar de que tienen una construcción tan primitiva, los controladores de interfaz de diseño personalizado a menudo son necesarios para manejar los mensajes de un sistema informático. Los mensajes activos también están diseñados para operar entre nodos de computadora que ejecutan el mismo programa. De esta manera, las instruccionesenviado y recibido son específicos para el programa que ya se ejecuta en la computadora de destino.
Debido a su naturaleza, los mensajes activos han encontrado un uso extenso en entornos informáticos paralelos, como aplicaciones de proceso único, datos múltiples (SPMD). Estos programas se ejecutan en grandes redes de sistemas informáticos donde se utilizan mensajes activos para pasar instrucciones y datos entre las máquinas. Dichos sistemas distribuidos utilizan el método para procesar eficientemente cantidades masivas de datos que de otro modo tardarían demasiado en una sola máquina.