Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ syms(4) — Tru64 UNIX 4.0f

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ldfcn(4)

syms(4)  —  File Formats

NAME

syms − Symbol table

SYNOPSIS

#include <sym.h>
#include <symconst.h>

DESCRIPTION

The symbol table departs from the standard COFF symbol table. The symbol table consists of many tables unbundling information usually found in the one COFF symbol table.  The symbol table should be viewed as a handcrafted, network-style database designed for space and access efficiency. 

The following structures or tables appear in the symbol table:

Table Contents
Symbolic header Sizes and locations of all other tables
File descriptors Per file locations for other tables
Procedure descriptors Frame information and location of procedure information
Local symbols Local type, local variable, and scoping information
Local strings String space for local symbols
Line numbers Compacted by encoding, contains a line per instruction
Relative file desc. Indirection for inter-file symbol access
Optimization symbols To be defined
Auxiliary symbols Data type information for local and external symbols
External symbols Global text and data symbols
External strings String space for external symbols
Dense numbers Index pairs (file, symbol) for compiler use (−oldc only)

External and local symbols are both represented using the following structure:

struct
{
    long      iss;    /∗ index into string space ∗/
    long      value;  /∗ address, size, etc.; depends on sc and st ∗/
    unsigned  st: 6;  /∗ symbol type (e.g., local, param, etc.) ∗/
    unsigned  sc: 5;  /∗ storage class (e.g., text, bss, etc.) ∗/
    unsigned  reserved: 1;
    unsigned  index;  /∗ index to symbol or auxiliary tables ∗/
};

RELATED INFORMATION

ldfcn(4). 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026