Cobol and c programs – HP Integrity NonStop J-Series User Manual
Page 39
Preparing Programs
HP NonStop AutoTMF Software User’s Guide—429952-016
3-5
Preparing TNS/R Programs
TNS/R language runtime libraries are implemented in Shared Runtime Libraries
(SRLs). When a TNS/R object is made executable, each external reference is
assigned to the system library, a user library, or to a system SRL. Once a reference
is assigned to an SRL, the reference cannot be changed.
SRLs are independent of one another and do not share data unless explicitly
declared; several system SRLs, notably the C and C++ SRLs have conflicting
definitions and cannot be linked together.
These features of TNS/R mode enhance the capabilities of the language runtime
support but also make interception of procedure calls more complex, resulting in the
requirements and limitations described below.
ESCORT CI identifies three classes of TNS/R programs and deals with them as
described in
Table 3-1. TNS/R Program Classes and NonStop AutoTMF Libraries:
COBOL and C Programs
Before they are prepared, COBOL and C programs reference the COBOL and/or C
SRLs as well as the CRE library routines. The COBOL and C programs automatically
have compiler-defined data structures that are referenced by the initialization routines
in those SRLs.
If a program references the COBOL/C/CRE SRLs (and no others), the PREPARE
command will automatically retarget calls made to those libraries to the ESCRUNNM
user library provided as part of the NonStop AutoTMF TNS/R support. The prepared
program will have no references to SRLs.
ESCRUNNM is an executable user library that contains the COBOL, C, CRE, and
GPLIB runtime libraries. The COBOL/C/CRE libraries are compatible and use the data
structures defined by the CRE. Programs must have data structures that are
compatible with the CRE initialization routines.
ESCRUNNL is a linkable version of the ESCRUNNM library; use this object if you
relink the NonStop AutoTMF runtime with your own TNS/R user library.
Program Class
Runtime
library
Linkable library
Preparation Processing
COBOL/C
ESCRUNNM
ESCRUNNL
SRLs references eliminated; all
calls intercepted in NonStop
AutoTMF UL.
pTAL
ESCRUNNT
ESCRUNN
Direct Enscribe/GPLIB calls
intercepted in NonStop AutoTMF
UL
C++/Other SRL
ESCRUNNT
ESCRUNN
Direct Enscribe/GPLIB calls
intercepted in NonStop AutoTMF
UL; all other calls not intercepted