SCO OpenServer provides several mechanisms that
allow processes to exchange data and synchronize
The simpler of these mechanisms are pipes, named pipes, and signals.
These are limited, however, in what they can do.
Pipes do not allow unrelated processes to communicate.
Named pipes allow unrelated processes to communicate,
but they cannot
provide private channels for pairs of
that is, any process with appropriate permission may read from or
write to a named pipe.
Sending signals, via the
allows arbitrary processes to communicate, but the
message consists only of the signal number.
SCO OpenServer also provides an InterProcess Communication (IPC)
package that supports three, more versatile types of interprocess
Messages allow processes to send formatted data streams to
Semaphores allow processes to synchronize execution.
Shared memory allows processes to share parts
of their virtual address space.
When implemented as a unit, these three mechanisms
share common properties such as
each mechanism contains a ``get'' system call
to create a new entry or retrieve an existing one
each mechanism contains a ``control''
system call to query the status of an
entry, to set status information, or to remove
the entry from the system
each mechanism contains an ``operations'' system call
to perform various operations on an entry
This section describes the system calls for each of these
three forms of IPC.
This information is for programmers who write multiprocess
These programmers should have a general
understanding of what semaphores are and how they are used.
Information from other sources would also be helpful.
as well as the following manual pages:
Included in this section are several example programs that
show the use of these IPC system calls.
Since there are many ways
the same task or requirement, keep in mind that the
example programs were written for clarity and not for
Usually, system calls are
embedded within a larger user-written program that makes use of a
particular function provided by the calls.
© 2005 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 -- 02 June 2005