This guide is designed for programmers who are using computer systems running the Tru64TM UNIX® (formerly DIGITAL UNIX) operating system and want to use realtime functions. Users may be writing new realtime applications or they may be porting existing realtime applications from other systems.
This guide explains how to use POSIX 1003.1b (formerly POSIX 1003.4 Draft 14) functions in combination with other system and library functions to write realtime applications. This guide does not attempt to teach programmers how to write applications.
This guide does not present function syntax or reference information.
The online reference pages present syntax and explanations of POSIX 1003.1b
functions.
Audience
This guide is for application programmers or system engineers
who are already familiar with the C programming language.
The audience using
realtime features is expected to have experience with UNIX operating systems.
They also should have experience with UNIX program development tools.
Organization
This guide contains the following chapters:
Chapter 1 | Introduction to Realtime Programming Describes the realtime functionality supported by the Tru64 UNIX operating system. |
Chapter 2 | The Tru64 UNIX Scheduler Describes the use of P1003.1b functions to determine and set priority for processes in your application. This chapter also describes the priority scheduling policies provided by the Tru64 UNIX operating system. |
Chapter 3 | Shared Memory Describes the creation and use of P1003.1b shared memory for interprocess communication. |
Chapter 4 | Memory Locking Describes the use of P1003.1b functions for locking and unlocking memory. |
Chapter 5 | Signals Describes the creation and use of POSIX 1003.1b realtime signals for interprocess communication. |
Chapter 6 | Clocks and Timers Describes use of P1003.1b functions for constructing and using high-resolution clocks and timers. |
Chapter 7 | Asynchronous Input and Output Describes the use of P1003.1b functions for asynchronous input and output. |
Chapter 8 | File Synchronization Describes the use of POSIX 1003.1b functions for synchronized input and output. |
Chapter 9 | Semaphores Describes the creation and use of P1003.1b semaphores for interprocess synchronization. An example illustrates how to use semaphores and shared memory in combination. |
Chapter 10 | Messages Describes the creation and use of message queues for interprocess communication and synchronization in realtime applications. |
Chapter 11 | Realtime Performance and System Tuning Describes tuning techniques for improving realtime system performance. |
Appendix A | Tru64 UNIX Realtime Functional Summary Provides tables of commands and functions useful for realtime application development. |
The following documents are relevant to writing realtime applications:
P1003.1b function reference pages
POSIX Conformance Document
Guide to DECthreads
Device Driver Kit documentation (available separately from the base operating system)
The C Programming Language by Kernighan and Ritchie
IEEE Standard Portable Operating System Interface for Computer Environments manuals, published by the Institute of Electrical and Electronics Engineers, Inc.
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 guide uses the following conventions:
% | A percent sign represents the C shell system prompt. |
# | A number sign represents the default superuser prompt. |
%
cat |
Boldface type in interactive examples indicates typed user input. |
file | Italic (slanted) type indicates variable values, placeholders, and function argument names. |
. . . | Horizontal ellipsis indicates that the preceding item can be repeated one or more times. It is used in syntax descriptions and function definitions. |
. . . |
A vertical ellipsis indicates that a portion of an example that would normally be present is not shown. |
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. |