Comparison of Executable and Relocatable Libraries [ Getting Started as an MPE/iX Programmer Programmer's Guide ] MPE/iX 5.0 Documentation
Getting Started as an MPE/iX Programmer Programmer's Guide
Comparison of Executable and Relocatable Libraries
Relocatable libraries (RLs) and executable libraries (XLs) share
important characteristics. Both are:
* Created by programmers using HP Link Editor/XL commands.
* Contain routines necessary for program execution.
* Permit programs to share routines.
Their major differences are:
* An RL stores routines in relocatable form, and an XL stores them
in executable form.
* An RL contains relocatable object code, which HP Link Editor/XL
explicitly merges into an object module for each program that
calls the routine. An XL contains sharable code, and each program
refers to the same version of the code. When a program calls an
XL routine, the loader reads it from disc into computer memory
prior to execution.
* When HP Link Editor/XL merges object modules from an RL into a
program file, all the modules become part of one executable object
module. An RL routine can share global data with a program. An
XL routine can have its own global data area, but executable
object modules cannot share global data with the program or other
executable modules.
* HP Link Editor/XL merges RL routines into a program file at link
time. However, it only reserves space for pointers to XL routines
in the External Reference Table at link time, and the loader
resolves the references at run time.
* HP Link Editor/XL can search a series of RLs during the linking
phase. The loader can search a series of XLs during the execution
phase if you provide it with an XL list.
MPE/iX 5.0 Documentation