HP-UX Linker and Libraries User's Guide

Glossary
absolute object
code
Machine code that contains absolute virtual addresses. Created by the linker when it combines
relocatable object files.
archive library A library, created by the ar command, which contains one or more object modules. By convention,
archive library file names end with .a. Compare with shared library.
attaching a shared
library
The process the dynamic loader goes through of mapping the shared library code and data into
a process's address space, relocating any pointers in the shared library data that depend on
actual virtual addresses, allocating the bss segment, and binding routines and data in the shared
library to the program.
basic block A contiguous section of assembly code, produced by compilation, that has no branches in except
at the top, and no branches out except at the bottom.
binding The process the dynamic loader goes through of filling in a process's procedure linkage tables
and data linkage tables with the addresses of shared library routines and data. When a symbol
is bound, it is accessible to the program.
breadth-first
search order
The dependent library search algorithm used when linking and loading 64-bit applications./.
bss segment A segment of memory in which uninitialized data is stored. Compare with text segment and data
segment. For details, refer a.out(4).
buffer A temporary holding area for data. Buffers are used to perform input and output more efficiently.
child A process that is spawned by a process (a sub-process).
code generation A phase of compilation in which object code is created.
compilation phase A particular step performed during compilation - for example, pre-processing, lexical analysis,
parsing, code generation, linking.
complete
executable
An executable (a.out) file that does not use shared libraries. It is complete because all of its library
code is contained within it. Compare with incomplete executable.
crt0.o file See startup file.
data export
symbol
An initialized global variable that may be referenced outside of the library.
data linkage table A linkage table that stores the addresses of data items.
data segment A segment of memory containing a program's initialized data. Compare with bss segment and
text segment. For details, refer a.out(4).
deferred binding The process of waiting to bind a procedure until a program references it. Deferred binding can
save program startup time. Compare with immediate binding.
demand-loadable When a process is "demand-loadable," its pages are brought into physical memory only when
they are accessed.
dependency Occurs when a shared library depends on other libraries - that is, when the shared library was
built (with ld -b), other libraries were specified on the command line. See also dependent library.
dependent library A library that was specified on the command line when building a shared library (with ld -b).
See dependency.
depth-first search
order
The dependent library search algorithm used when linking and loading in 32-bit mode. Searching
a list starting at the end of the list and moving toward the head. Shared library initialization
routines are invoked by traversing the list of loaded shared libraries depth-first.
dll See dynamic loading library.
DLT See data linkage table.
driver A program that calls other programs.
dynamic linking The process of linking an object module with a running program and loading the module into
the program's address space.
dynamic loader Code that attaches a shared library to a program. See dld.sl(5).
225