This manual defines the requirements, mechanisms, and conventions used
in the
UNIX®
interface that supports procedure calls for Tru64 UNIX
for Alpha systems.
The standard defines the data structures, constants,
algorithms, conventions, methods, and functional interfaces that enable a
native user-mode procedure to operate correctly in a multilanguage and multithreaded
environment on Tru64 UNIX systems operating on Alpha hardware.
Audience
Although this manual primarily defines requirements for compiler and
debugger writers, the information applies to procedure calling for all programmers
at all levels of programming.
Organization
This document includes eight chapters:
Chapter 1 | Introduces the standard and provides definitions of terms used in the standard. |
Chapter 2 | Describes the fundamental concepts of the Tru64 UNIX calling standard for Alpha systems. |
Chapter 3 | Describes the aspects of the standard that deal with flow control. |
Chapter 4 | Discusses the passing and storage of data. |
Chapter 5 | Discusses how the standard relates to events outside the normal program flow. |
Chapter 6 | Discusses stack limit checking in multithreaded execution environments. |
Chapter 7 | Describes the mechanisms for functions that are needed to support procedure call tracing. |
Chapter 8 | Discusses procedure descriptors. |
This Tru64 UNIX calling standard is a component of the larger Alpha Software Architecture and depends on standards and conventions not described in this document. These standards include:
Object language (including link-time optimizations) and object file format
Status values and message definition, formatting, and reporting
Heap memory management and dynamic string management
Multithread architecture
Names and naming conventions
The following documents contain information related to this standard and the standards mentioned in the previous list:
Alpha Architecture Reference Manual
Tru64 UNIX Programmer's Guide
Tru64 UNIX Assembly Language Programmer's Guide
Guide to DECthreads
Tru64 UNIX POSIX Conformance Document
Information Technology - Portable Operating System Interface (POSIX) - Part 1: System Application Program Interface (API) [C Language] ISO/IEC 9945-1: 1990
American National Standard for Information Systems Programming Language C - ANSI X3.159-1989 and its international equivalent, ISO/IEC 9899
Icons on Tru64 UNIX Printed Books
The printed version of the Tru64 UNIX documentation uses letter icons on the spines of the books to help specific audiences quickly find the books that meet their needs. (You can order the printed documentation from Compaq.) The following list describes this convention:
G | Books for general users |
S | Books for system and network administrators |
P | Books for programmers |
D | Books for device driver writers |
R | Books for reference page users |
Some books in the documentation help meet the needs of several audiences. For example, the information in some system books is also used by programmers. Keep this in mind when searching for information on specific topics.
The
Documentation Overview
provides
information on all of the books in the Tru64 UNIX documentation set.
Reader's Comments
Compaq welcomes any comments and suggestions you have on this and other Tru64 UNIX manuals.
You can send your comments in the following ways:
Fax: 603-884-0120 Attn: UBPG Publications, ZKO3-3/Y32
Internet electronic mail:
readers_comment@zk3.dec.com
A Reader's Comment form is located on your system in the following location:
/usr/doc/readers_comment.txt
Mail:
Compaq Computer Corporation
UBPG Publications Manager
ZKO3-3/Y32
110 Spit Brook Road
Nashua, NH 03062-2698
A Reader's Comment form is located in the back of each printed manual. The form is postage paid if you mail it in the United States.
Please include the following information along with your comments:
The full title of the book and the order number. (The order number is printed on the title page of this book and on its back cover.)
The section numbers and page numbers of the information on which you are commenting.
The version of Tru64 UNIX that you are using.
If known, the type of processor that is running the Tru64 UNIX software.
The Tru64 UNIX Publications group cannot respond to system problems or
technical support inquiries.
Please address technical questions to your
local system vendor or to the appropriate Compaq technical support office.
Information provided with the software media explains how to send problem
reports to Compaq.
Conventions
This document uses the following typographical and symbol conventions:
%
$
A percent sign represents the C shell system prompt. A dollar sign represents the system prompt for the Bourne, Korn, and POSIX shells.
%
cat
Boldface type in interactive examples indicates typed user input.
Italic (slanted) type indicates variable values, placeholders, and function argument names.
In syntax definitions, brackets indicate items that are optional and braces indicate items that are required. Vertical bars separating items inside brackets or braces indicate that you choose one item from among those listed.
colored
text
In syntax definitions, literal elements are colored green. Variable values, placeholders, and function argument names are colored red. No special colored text is used outside of syntax descriptions.
cat
(1)A cross-reference to a reference page includes the appropriate section
number in parentheses.
For example,
cat
(1)
indicates that you can find information on the
cat
command in Section 1 of the reference pages.
The following presentation conventions apply to this standard:
Constants, data structures, and functional interfaces
Constants are represented symbolically with their values given at the point of definition in the standard. Data structures are defined in terms of the physical memory format of each structure. Functional interface syntax is presented in abstract form. Concrete language bindings for each constant, data structure, and functional interface are provided in system definition files external to the standard.
Algorithms
Algorithms are presented as a series of steps in standard American English.
Numbering
All numbers are represented as decimal values unless otherwise indicated.
Nondecimal numbers are represented with the base name in parentheses following
the number, for example,
1B(hex)
.
Memory and register layouts
Figures that represent memory or register layouts follow the convention that increasing addresses run from top to bottom and right to left. The most significant bits are on the left; the least significant bits are on the right.
Code examples
All code examples are supplied to clarify the concept under discussion. These examples do not necessarily reflect the optimized or properly scheduled code sequences that a compiler would generate. The assembly language syntax follows the conventions used in the Tru64 UNIX Assembly Language Programmer's Guide.
Record fields
Record fields are referred to by using the name of the record or subrecord followed by a dot (.) and then the field name:
record-name.subrecord-name.field