Public Libraries And Dlls - HP eld Manual

Table of Contents

Advertisement

Binding of References
When creating a linkfile, the linker similarly concatenates the relocation tables that
accompany the code and data sections.
The linker's input linkfiles may also contain common data. Such data items are defined,
but not assigned addresses within sections. If a normal definition of the same symbol is
found, the common data definitions are ignored. If there is no normal definition, and the
linker is creating a loadfile, the linker converts the common data symbol into a data
symbol that is allocated space in the .bss section. Common data cannot have initial
values.
If you are creating an implicit DLL (with the -make_implicit_lib option)
error if you have any data that would need to go into the data variable segment (i.e., -
instance_data data1constant is imposed).

Public Libraries and DLLs

TNS/E supports public libraries. Public libraries are a set of (DLL) libraries, available to
all users of the system, and managed as part of the system software. They are mostly
supplied by HP, although you and third party software providers can also provide DLLs
to be added to the public DLLs. You use DSM/SCM to add your DLLs to the public
libraries. Note that these must be loadfiles, not linkfiles.
Public libraries include:
TNS/E compiler run-time libraries.
Libraries that support connections to TNS/E communication facilities.
Certain TNS/E tools, utilities, and the loader library (rld).
TNS/E compilers generate needed linkages from PIC programs and DLLs to the
compilers' run-time libraries.
In addition to accessing public libraries, PIC programs and DLLs will automatically
access the system and millicode libraries, without your specifying this linkage
requirement. The system and millicode libraries are PIC libraries that the system loads
before loading any application code, and the loader and operating system
automatically link your application to these libraries as appropriate. These are known
as implicit libraries because every loadfile is implicitly a user of them.
This can be contrasted with the public DLLs, which are explicit because a loadfile must
explicitly ask to use a public DLL, although you need not specify where to find the
public DLL. The combination of the ZREG file (the Public LIbrary Registry file) and
ZREGPTR (pointer) file specifies the location.
One main user of the ZREG file (and the ZREGPTR) is the preloader. Public DLLs are
preloaded during coldload, reload of a CPU or when a set of public DLLs is replaced
online. The other main user is the linker (
finding the ZREG file that is in the same subdirectory, then searches the registry. The
linker does not use the ZREGPTR pointer directly, but acquires its information from the
preloader by use of a procedure call.
). Typically,
eld
eld Manual—527255-009
3-22
Public Libraries and DLLs
reports an
eld
"finds" the DLLs by
eld

Advertisement

Table of Contents
loading

Table of Contents