fastbind.1 (2010 09)
f
fastbind(1) fastbind(1)
NAME
fastbind - Prepare an incomplete executable for faster program start-up
SYNOPSIS
fastbind [-nu] incomplete-executable...
DESCRIPTION
fastbind is a tool that can improve the start-up time of programs that use shared libraries (incomplete
executables) by storing information about needed shared library symbols in the executable file.
fastbind performs analysis on the symbols used to bind an executable and all of it’s dependent shared
libraries, and stores this information in the executable file. The next time the executable is run, the
dynamic loader will notice that this information is available, and it will use this fastbind information to
bind the executable instead of the standard search method for binding the symbols. For Itanium-based
systems, the dynamic loader is /usr/lib/hpux32/dld.so
for 32-bit mode or
/usr/lib/hpux64/dld.so
for 64-bit mode. For PA-RISC systems, the dynamic loader is
/usr/lib/dld.sl
for 32-bit mode or /usr/lib/pa20_64/dld.sl
for 64-bit mode.
Since
fastbind writes the fastbind information in the executable file, you must have write permission
on the executable file. Also, if the executable file being analyzed is being run as another process, the file
will be locked against modifications by the kernel, and
fastbind will fail.
If the shared libraries that an executable is dependent on are modified after the fastbind information is
created, the dynamic loader will silently revert to standard search method for binding the symbols. The
fastbind information can be re-created by running
fastbind on the executable again. fastbind will
automatically erase the old fastbind information and generate the new one.
The
ld option +fb can be used to instruct the linker to run the fastbind tool on an incomplete executable
it has produced.
Environment Variables
If
dld determines that the fastbind information is out of date, it will silently revert to standard search
method for binding the symbols. If the environment variable _HP_DLDOPTS is set to -fbverbose the
dynamic loader will emit a warning message when the fastbind information is out of date.
The environment variable
_HP_DLDOPTS can be set to -nofastbind to make the dynamic loader
ignore the fastbind information and revert to the standard search method for binding the symbols.
Options
fastbind recognizes the following options:
-n Remove the fastbind information from the executable, returning it to the same state it
was in before fastbind was originally run on it.
-u Normally, if fastbind detects any unsatisfied symbols while building the fastbind
information, it will generate an error message and not modify the executable file.
When fastbind is invoked with -u option however, unresolved symbols are allowed.
EXTERNAL INFLUENCES
Environment Variables
The following internationalization variables affect the execution of
fastbind:
LANG
Determines the locale category for native language, local customs and coded character set in the
absence of LC_ALL and other LC_* environment variables. If LANG is not specified or is set to the
empty string, a default of C (see lang(5)) is used instead of LANG.
LC_ALL
Determines the values for all locale categories and has precedence over LANG and other LC_*
environment variables.
LC_MESSAGES
Determines the locale that should be used to affect the format and contents of diagnostic messages
written to standard error.
LC_NUMERIC
Determines the locale category for numeric formatting.
HP-UX 11i Version 3: September 2010 − 1 − Hewlett-Packard Company 1