DLL Programmer's Guide for TNS/E Systems

DLLs on a TNS/E System
DLL Programmer’s Guide for TNS/E Systems527252-006
1-14
User Library
A user library can also be specified at run time:
In Guardian, the run-option lib can specify the fully qualified name of the user
library:
/lib $vol.subvol.name/
Alternatively, the option with no name, /lib/, causes any libname attribute in the
program file to be ignored.
In OSS, the shell command run has a -lib option that accepts a fully qualified
Guardian file name in OSS notation:
-lib /G/vol/subvol/name
Alternatively, use -lib=unset to disregard any libname attribute in the program file.
A /lib .../ or -lib=... specification at run time does not change the libname attribute of
the program file.
Ordinary DLLs are generally more convenient, and there can be more than one, so the
use of a user library with PIC programs is not encouraged. The feature is provided
primarily for compatibility with legacy practice on NonStop systems. A user library can
also provide an "intercept" facility: because it is loaded first after the program, a user
library could export symbol definitions that take precedence over those in DLLs on the
linker-provided libList.
Figure 1-5. Loadfiles of Figure 1-4 with a User Lib and Its Library Added
Program
DLL A
DLL B
DLL C
DLL D
DLL E
Lib G
Lib F
Lib A
Lib B
Lib C
Lib F
Lib D
Lib E
Lib F
Lib G
Lib G
Code
and
Data
libList
VST015.vsd
User Library
(DLL)
Lib H
Lib H