About This Guide

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.

Related Documents

The following documents are relevant to writing realtime applications:

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:

Please include the following information along with your comments:

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.