z/TPF Program Management - IBM
z/TPF Program Management - IBM
z/TPF Program Management - IBM
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
z/<strong>TPF</strong> program types and linkage<br />
An object file is a compiler or assembler output file that is suitable as input to a<br />
linkage editor. In the z/<strong>TPF</strong> system, object files are included in a shared object,<br />
which is all or part of a computer program in a form suitable for loading into main<br />
storage for execution. A shared object usually is the output of a linker. Depending<br />
on the z/<strong>TPF</strong> program, there are different ways to package programs for linkage.<br />
The number of entry points defined impacts the way these programs are<br />
externalized to other programs for linkage. There are a number of ways to increase<br />
the efficiency of the linkage between these programs and to improve the<br />
performance of your z/<strong>TPF</strong> system.<br />
A BAL shared object (BSO) is a type of shared object consisting of one or more<br />
objects that are created by assembling z/<strong>TPF</strong> E-type basic assembler language<br />
(BAL) programs. By contrast, a C shared object (CSO) is a type of shared object<br />
consisting of one or more objects that are created by compiling C language<br />
programs or assembling z/<strong>TPF</strong> BAL programs using C/C++ calling conventions.<br />
Both BSOs and CSOs can have single and multiple entry points. See z/<strong>TPF</strong><br />
Application <strong>Program</strong>ming for more information.<br />
Figure 1 shows E-type program types in the z/<strong>TPF</strong> system.<br />
BAL shared object (BSO)<br />
Single entry point<br />
CSO program without<br />
the main function<br />
Figure 1. E-type program types<br />
E-type programs / shared objects<br />
Single entry point<br />
CSO program with<br />
the main function<br />
Assembler and C program packaging<br />
C shared object (CSO)<br />
Library<br />
(non-program)<br />
<strong>Program</strong> and library<br />
BSOs and CSOs can be repackaged into multiple entry point shared object libraries<br />
to provide the following performance advantages and benefits:<br />
v Reduction in system overhead for an application because two segments can be<br />
linked together as one unit, creating a shorter path length because internal<br />
linkage paths are faster than external paths.<br />
v For BSOs:<br />
– <strong>Program</strong> expansion beyond 4 KB.<br />
– The program can be coded with multiple base registers or can remain<br />
baseless.<br />
– The assembler API of R0 - R7 has been expanded to include R8.<br />
© Copyright <strong>IBM</strong> Corp. 2005, 2012 11