8. BFD glossary
This is a short glossary of some BFD terms.
- a.out
- The a.out object file format. The original Unix object file format.
Still used on SunOS, though not Solaris. Supports only three sections.
- archive
- A collection of object files produced and manipulated by the `ar'
program.
- backend
- The implementation within BFD of a particular object file format. The
set of functions which appear in a particular target vector.
- BFD
- The BFD library itself. Also, each object file, archive, or executable
opened by the BFD library has the type `bfd *', and is sometimes
referred to as a bfd.
- COFF
- The Common Object File Format. Used on Unix SVR3. Used by some
embedded targets, although ELF is normally better.
- DLL
- A shared library on Windows.
- dynamic linker
- When a program linked against a shared library is run, the dynamic
linker will locate the appropriate shared library and arrange to somehow
include it in the running image.
- dynamic object
- Another name for an ELF shared library.
- ECOFF
- The Extended Common Object File Format. Used on Alpha Digital Unix
(formerly OSF/1), as well as Ultrix and Irix 4. A variant of COFF.
- ELF
- The Executable and Linking Format. The object file format used on most
modern Unix systems, including GNU/Linux, Solaris, Irix, and SVR4. Also
used on many embedded systems.
- executable
- A program, with instructions and symbols, and perhaps dynamic linking
information. Normally produced by a linker.
- LMA
- Load Memory Address. This is the address at which a section will be
loaded. Compare with VMA, below.
- NLM
- NetWare Loadable Module. Used to describe the format of an object which
be loaded into NetWare, which is some kind of PC based network server
program.
- object file
- A binary file including machine instructions, symbols, and relocation
information. Normally produced by an assembler.
- object file format
- The format of an object file. Typically object files and executables
for a particular system are in the same format, although executables
will not contain any relocation information.
- PE
- The Portable Executable format. This is the object file format used for
Windows (specifically, Win32) object files. It is based closely on
COFF, but has a few significant differences.
- PEI
- The Portable Executable Image format. This is the object file format
used for Windows (specifically, Win32) executables. It is very similar
to PE, but includes some additional header information.
- relocations
- Information used by the linker to adjust section contents. Also called
relocs.
- section
- Object files and executable are composed of sections. Sections have
optional data and optional relocation information.
- shared library
- A library of functions which may be used by many executables without
actually being linked into each executable. There are several different
implementations of shared libraries, each having slightly different
features.
- symbol
- Each object file and executable may have a list of symbols, often
referred to as the symbol table. A symbol is basically a name and an
address. There may also be some additional information like the type of
symbol, although the type of a symbol is normally something simple like
function or object, and should be confused with the more complex C
notion of type. Typically every global function and variable in a C
program will have an associated symbol.
- target vector
- A set of functions which implement support for a particular object file
format. The `bfd_target' structure.
- Win32
- The current Windows API, implemented by Windows 95 and later and Windows
NT 3.51 and later, but not by Windows 3.1.
- XCOFF
- The eXtended Common Object File Format. Used on AIX. A variant of
COFF, with a completely different symbol table implementation.
- VMA
- Virtual Memory Address. This is the address a section will have when
an executable is run. Compare with LMA, above.
This document was generated
by system on December, 2 2004
using texi2html