In this section: |
IBM's Dynamic Language Environment (LE) enables you to use a common run-time environment for all LE-supported high-level languages (HLLs). IBM LE is required in order to run FOCUS.
Starting in FOCUS Version 7.2, Information Builders required the use of the IBM Language Environment (LE). Specifically, access to an LE runtime library named SCEERUN LOADLIB is required.
FOCUS customers who access several OS formatted disks prior in the search order to the SCEERUN LOADLIB may experience a slowdown in the startup of FOCUS and delays in the processing of requests. For example:
In this scenario, the disk containing the SCEERUN LOADLIB is accessed at a filemode higher in the CMS search order than the last OS disk (filemode P). This causes an elongated search through all the OS disks in order to find the SCEERUN LOADLIB.
Update your installation's procedures to access the SCEERUN LOADLIB before the OS disks as follows:
ACCESS 19E z/A * LOADLIB
Note: This approach may introduce a future maintenance concern because of the possibility of having two different versions of SCEERUN LOADLIB.
From a non-LE-conforming driver (such as FOCUS), you can use LE preinitialization facilities to create and initialize a common run-time environment, execute applications written in an LE-conforming HLL multiple times within the preinitialized environment, and terminate the preinitialized environment. FOCUS utilizes the CEEPIPI preinitialized interface to perform these tasks.
In the preinitialized environment, FOCUS provides support for executing subroutines multiple times.
Language Environment preinitialization is commonly used to enhance performance for repeated invocations of an application or for a complex application with many repetitive requests where fast response is required. For example, if FOCUS invokes an HLL subroutine a number of times, the creation and termination of that HLL environment multiple times is needlessly inefficient. A more efficient method is to create the HLL environment only once for use by all invocations of the routine.
The IBMLE parameter controls preinitialization for calls to subroutines from FOCUS. The following table summarizes FOCUS preinitialization support for user-written subroutines:
HLL |
Preinitialization Supported? |
Preinitialization Interface |
IBMLE Setting |
---|---|---|---|
C |
Yes |
C assembler interface. Calls to the subroutine use a special extended parameter list. |
ON |
C++ |
No |
OFF | |
COBOL |
Yes |
The COBOL run-time option RTEREUS(ON) is the recommended preinitialization interface for COBOL subroutines. This interface requires IBMLE=OFF. |
OFF |
FOCUS can also accommodate LE compliant COBOL subroutines with IBMLE=ON if required by site characteristics or restrictions. RTEREUS preinitialization and CEEPIPI preinitialization are mutually exclusive for FOCUS subroutines and cannot be used simultaneously. If used simultaneously, unpredictable results will occur. |
ON | ||
FORTRAN |
No |
OFF | |
PL/I |
Yes |
PL/I for MVS & VM-defined preinitialization interfaces with calls to CEESTART or PLISTART with a special extended parameter list. Preinitialization services do not support PL/I multitasking applications. |
ON |
For more information regarding the IBM Language Environment see IBM's OS/390 V2R10.0 Language Environment for OS/390 & VM Programming Guide, Document Number: SC28-1939-09.
Information Builders |