Articulo de referencia

Lenguaje de automatización generalizado

Existen dos formas de GAL. La primera es el Lenguaje de Automatización General para la automatización de dispositivos y la segunda es el Lenguaje de Automatización Generalizado ...

Existen dos formas de GAL. La primera es el Lenguaje de Automatización General para la automatización de dispositivos y la segunda es el Lenguaje de Automatización Generalizado ( GAL ), que es un lenguaje de programación de muy alto nivel para sistemas basados ​​en MVS como OS/390 y z/OS .

Lenguaje de automatización general

Desarrollado por iLED para proporcionar un lenguaje común que estandarice la automatización y el control de dispositivos en entornos residenciales ( domótica ) y comerciales. El lenguaje proporciona un método estandarizado de comunicación hacia/desde dispositivos controlados/controladores. En cada dispositivo, el GAL se convierte al protocolo y medio específicos de la máquina. Un ejemplo es el control de un reproductor de DVD. El comando GAL será <MyHouse MyArea MyRoom MyDevice MyCommand> FredsHouse GroundFloor Lounge DVDplayer ON. El dispositivo GAL lo convertirá entonces en el comando IR discreto para encender el reproductor de DVD. [ 1 ]

Lenguaje de automatización generalizado

Desarrollado por Expans Systems para proporcionar características y estructuras que permiten al programador interceptar eventos del sistema y programar respuestas, como se implementa a través de su producto AutoMan . Similar a BASIC, GAL permite a los programadores y operadores de sistemas definir la lógica que se aplica a los mensajes del sistema a medida que fluyen a través de un entorno multisistema ( sysplex ). GAL también permite al programador definir eventos que han ocurrido en el pasado, interceptando mensajes de Action Message Retention Facility (AMRF). El lenguaje tiene estructuras integradas para obtener la antigüedad de un mensaje retenido y tomar decisiones sobre su destino según la antigüedad. GAL se puede usar para escribir nuevos comandos del sistema, interceptando e interpretando cualquier cosa que se ingrese en una consola de operador. GAL usa palabras clave como nombres de días de la semana, nombres de meses, etc., para programar automáticamente eventos en el sistema. Al igual que REXX , GAL es tanto un lenguaje interpretado como un lenguaje compilado . Las sentencias GAL se pueden introducir en el intérprete sobre la marcha, o bien se pueden predefinir escenarios de automatización completos, como la lógica para definir operaciones desatendidas de un sistema, y ​​se pueden compilar sin conexión, utilizando el programa compilador GALCOMP.

GAL implementa comparaciones mediante sentencias IF, asignación de variables mediante la sentencia LET y llamadas a subrutinas. GAL permite al programador acceder a REXX y Assembler cuando sea necesario. La naturaleza de alto nivel de GAL se ejemplifica con la sentencia EMAIL, que permite al programador enviar una alerta por correo electrónico cuando se detecta un evento que requiere intervención humana. Suponiendo que este evento requiere que se envíe una alerta a un destinatario predeterminado:

 MSG=XID999S VAR &MSGTXT LEN 100 DEBE &MSGTXT = $$MSGTXT CORREO ELECTRÓNICO ASUNTO '&MSGTXT' "Este es un problema que requiere atención urgente". 

GAL utiliza funciones de captura y reemplazo de texto. En este sencillo ejemplo, el texto del mensaje del sistema se captura en una variable y dicho texto se utiliza como asunto del correo electrónico. El mensaje en el cuerpo del correo electrónico es el texto entre comillas que aparece después del asunto.

GAL permite realizar consultas entre sistemas ( IBM XCF ) mediante simples sentencias IF, sin tener en cuenta los procesos internos subyacentes necesarios para llevar a cabo la comunicación entre sistemas. Simplemente se trata de identificar uno o más sistemas que se van a probar.

Por ejemplo, para comprobar si un trabajo se está ejecutando actualmente en un sistema asociado:

SI SYS=sysn JOB(jobname) ACTIVO HACER . . . FIN 

Véase también

Referencias

  1. "Convergencia tecnológica con eZiControl" . iLED. Archivado del original el 7 de junio de 2017. Consultado el 8 de junio de 2017 .
  • "GAL explicado" . Expans. 24 de agosto de 2015. Archivado del original el 27 de abril de 2017. Consultado el 8 de junio de 2017 .
  • Descripción de las características (PDF) . Expans. Archivado del original (PDF) el 5 de abril de 2016. Consultado el 8 de junio de 2017 .
  • Compilador de lenguaje de automatización generalizado (PDF) . Expans. Archivado del original (PDF) el 5 de abril de 2016. Consultado el 8 de junio de 2017 .
  • "AutoMan" . Desarrollo de sistemas y software de Expans . Directorio global de soluciones. IBM. 50647.
  • "AutoMate" . Desarrollo de sistemas y software de Expans . Directorio global de soluciones. IBM. 53263.