Using an Executable Library

You can use HP Link Editor/XL to create and main tain executable library ￿les (XLs). XLs contain executable modules with the follo wing characteristics:

Are in a form that can be directly executed.

Are shared, so that only one cop y of the code need exist on the system. Programs that use an executable module share the same ph ysical copy of the code.

Have their own global data, separate from the program's global data.

Have external references bet ween executable modules and calling programs resolv ed at run time.

Cannot have outer blocks and are, thus not independently executable.

HP Link Editor/XL creates an XL b y linking relocatable object ￿les or modules and placing the resulting modules in a library ￿le. T o be functional, an XL m ust be loaded with an executable program ￿le con taining an outer bloc k and an entry point.

MPE/iX executable libraries (XLs) ha ve the following c haracteristics: They can have any valid MPE/iX ￿le name.

Many can be accessed in one command because y ou can specify sev eral in the XL= parameter of :LINK or :RUN.

Creating an XL is a process similar to creating a relocatable library (RL); build an empt y XL and add modules to it. F or example, the commands

:LINKEDIT LinkEd> BUILDXL MYXL LinkEd> ADDXL FROM=MYOBJ LinkEd> EXIT

enter HP Link Editor/XL, build a new XL named MYXL, add the contents of a relocatable object ￿le named MYOBJ to it, and exit HP Link Editor/XL.

For detailed information on manipulating an XL, refer to Link Editor/XL Reference Manual (32650-90030).

HP Link Editor/XL automatically pre-links relocatable object modules as y ou add them to an XL. XLs are not searc hed at link time, but y ou can specify a list of them for the loader to search when the program is run. MPE/iX system libraries are XLs. The loader automatically searches system libraries after an y libraries y ou specify at load time.

HP Link Editor/XL 4-13