DLL Programmer's Guide for TNS/R Systems
DLL Programmer’s Guide for TNS/R Systems—522203-002
4-1
4 Finding Symbol Definitions
This section describes how the linker and loader resolve symbol references, including
cases when multiple definitions are available for the same symbol name.
Figure 4-1 below shows the evolution of code from source to linkfile to loadfile to
executable PIC load image. At the linkfile and loadfile stages, these code objects can
be brought together so they can exchange services and data. This exchange is defined
by symbol references that express a need for functions or data and symbol definitions
that provide functions and data.
The loadList
The loadList of a file consists of that file, the library files specified on its libList, the files
specified on their libLists, and so on. This is called the "breadth-first transitive closure"
of libLists. The linker develops the loadList of the loadfile being created. The loader,
at process creation time, develops the loadList of the program. For dlopen(), the
relevant loadList is that of the designated library file; that loadList extends the
operating load set of the program.
Figure 4-1. PIC Code Generation
Compiler
Loader
Linker
Source
LinkfileLinkfile Linkfile
Loadfile LoadfileLoadfile
Executable load image
{
A program
and/or DLLs
VST041.vsd