dynamic loading

An SVR4 term for a shared library.

library

 

dynamic search

The process that allows the location of shared libraries to be specified at runtime.

path

 

entry point

The location at which a program starts running after HP-UX loads it into memory. The entry point

 

is defined by the symbol $START$ in crt0.o.

explicit loading

The process of using the shl_load(3X) function to load a shared library into a running program.

export stub

A short code segment generated by the linker for a global definition in a shared library. External

 

calls to shared library procedures go through the export stub. See also import stub.

export symbol

A symbol definition that may be referenced outside the library.

exporting a

Making a symbol visible to code outside the module in which the symbol was defined. This is

symbol

usually done with the +e or -E option.

external reference

A reference to a symbol defined outside an object file.

feedback-directed

An optimization technique wherein procedures are relocated in a program, based on profiling

positioning

data obtained from running the program. Feedback-directed positioning is one of the optimizations

 

performed during profile-based optimization.

file descriptor

A file descriptor is returned by the open(2), creat(2), and dup(2) system calls. The file descriptor

 

is used by other system calls (for example, read(2), write(2), and close(2)) to refer to a the file.

filters

Programs that accept input data and modify it in some way before passing it on. For example,

 

the pr command is a filter.

flush

The process of emptying a buffer's contents and resetting its internal data structures.

global definition

A definition of a procedure, function, or data item that can be accessed by code in another object

 

file.

header string

A string, !<arch>\n, which identifies a file as an archive created by ar (\n represents the newline

 

character).

hiding a symbol

Making a symbol invisible to code outside the module in which the symbol was defined.

 

Accomplished with the -h linker option.

I-SOM

Intermediate code-System Object Module. Used during profile-based optimizations and level-4

 

optimization.

immediate binding

By default, the dynamic loader attempts to bind all symbols in a shared library when a program

 

starts up - known as immediate binding. Compare with deferred binding.

implicit address

Writing code that relies on the linker to locate a symbol in a particular location or in a particular

dependency

order in relation to other symbols.

implicit loading

Occurs when the dynamic loader automatically loads any required libraries when a program

 

starts execution. Compare with explicit loading.

import stub

A short code segment generated by the linker for external references to shared library routines.

 

See also export stub.

import symbol

An external reference made from a library.

incomplete

An executable (a.out) file that uses shared libraries. It is incomplete because it does not actually

executable

contain the shared library code that it uses; instead, the shared library code is attached when

 

the program runs. Compare with complete executable.

indirect addressing

The process of accessing a memory location through a memory address that is stored in memory

 

or a register.

initializer

An initialization routine that is called when a shared library is loaded or unloaded.

intermediate code

A representation of object code that is at a lower level than the source code, but at a higher level

 

than the object code.

library

A file containing object code for subroutines and data that can be used by programs.

link order

The order in which object files and libraries are specified on the linker command line.

link-edit phase

The compilation phase in which the compiler calls the linker to create an executable (a.out) file

 

from object modules and libraries.

226 Glossary