Llamadas de programa dinámico

Una llamada de programa dinámica es una llamada realizada a un objeto de programa. Por ejemplo, cuando utiliza el mandato CL CALL, está realizando una llamada de programa dinámico.

Los programas OPM se invocan utilizando llamadas de programa dinámicas. Los programas de OPM se limitan, además, a realizar sólo llamadas de programa dinámicas.

Los programas ILE también son llamados por llamadas de programa dinámicas. Se puede acceder a los procedimientos dentro de un programa ILE activado utilizando llamadas de procedimiento estático o llamadas de puntero de procedimiento.

A diferencia de las llamadas de procedimiento estático, que están enlazadas en tiempo de compilación, los símbolos para las llamadas de programa dinámico se resuelven en direcciones cuando se realiza la llamada. Como resultado, una llamada de programa dinámico utiliza más recursos del sistema que una llamada de procedimiento estático. Entre los ejemplos de una llamada de programa dinámico se incluyen:
  • Una llamada a un programa ILE o a un programa OPM
  • Una llamada a una API no enlazable

Una llamada de programa dinámica a un programa ILE pasa el control al PEP del programa identificado, que luego pasa el control al UEP del programa. Una vez que se ha realizado el proceso del programa llamado, el control se devuelve a la instrucción que sigue a la instrucción del programa de llamada.