Preface
This book describes the OpenSolaris™ 08/11 network and system interfaces used by application developers.
OpenSolaris 08/11 is fully compatible with UNIX® System V, Release 4 (SVR4) and conforms to the third edition of the System V Interface Description (SVID). OpenSolaris 08/11 conforms to the Single UNIX Specification, version 3 (SUSv3). OpenSolaris 08/11 supports all System V network services.
All utilities, their options, and library functions in this manual reflect SunOS Release 5.10.
Note - This SolarisTM release supports systems that use the SPARC® and x86 families of processor architectures: UltraSPARC® , SPARC64, AMD64, Pentium, and Xeon EM64T. The supported systems appear in the Solaris OS: Hardware Compatibility Lists at http://www.sun.com/bigadmin/hcl. This document cites any implementation differences between the platform types.
In this document these x86 related terms mean the following:
“x86” refers to the larger family of 64-bit and 32-bit x86 compatible products.
“x64” points out specific 64-bit information about AMD64 or EM64T systems.
“32-bit x86” points out specific 32-bit information about x86 based systems.
For supported systems, see the Solaris OS: Hardware Compatibility Lists.
Audience
This book is intended for programmers who are new to the SunOS platform or want more familiarity with some portion of the interfaces provided. Additional interfaces and facilities for networked applications are described in the ONC+ Developer’s Guide.
This manual assumes basic competence in programming, a working familiarity with the C programming language, and familiarity with the UNIX operating system, particularly networking concepts. For more information on UNIX networking basics, see W. Richard Stevens' UNIX Network Programming, second edition, Upper Saddle River, Prentice Hall, 1998.
Organization of the Manual
The services and capabilities of the basic system interfaces and basic network interfaces of the OpenSolaris 08/11 platform are described in the following chapters.
Chapter 1, Memory and CPU Management describes the interfaces that create and manage memory mappings, do high performance file I/O, and control other aspects of memory management.
Chapter 2, Remote Shared Memory API for Solaris Clusters describes the Application Programming Interface (API) framework and library functions for remote shared memory.
Chapter 3, Session Description Protocol API describes the API framework and library functions for the Solaris implementation of the Session Description Protocol (SDP).
Chapter 4, Process Scheduler describes the operation of the SunOS process scheduler, modification of the scheduler's behavior, the scheduler's interactions with process management interfaces, and performance effects.
Chapter 5, Input/Output Interfaces describes basic and old-style buffered file I/O and other elements of I/O.
Chapter 6, Interprocess Communication describes older forms of non-networked interprocess communication.
Chapter 7, Socket Interfaces describes the use of sockets, which are the basic mode of networked communication.
Chapter 8, Programming With XTI and TLI describes the use of XTI and TLI to do transport-independent networked communication.
Chapter 10, Transport Selection and Name-to-Address Mapping describes the network selection mechanisms used by applications to select a network transport and its configuration.
Chapter 11, Real-time Programming and Administration describes real-time programming facilities in the SunOS environment and their use.
Chapter 12, The Solaris ABI and ABI Tools describes the Solaris Application Binary Interface (ABI) and the tools used to verify an application's compliance with the Solaris™ ABI, appcert and apptrace.
Appendix A, UNIX Domain Sockets describes UNIX domain sockets.
Documentation, Support, and Training
The Sun web site provides information about the following additional resources:
Sun Welcomes Your Comments
Sun is interested in improving its documentation and welcomes your comments and suggestions. To share your comments, go to http://docs.sun.com and click Feedback.
Typographic Conventions
The following table describes the typographic conventions that are used in this book.
Table P-1 Typographic Conventions
Typeface |
Meaning |
Example |
|---|---|---|
AaBbCc123 |
The names of commands, files, and directories, and onscreen computer output |
Edit your .login file. Use ls -a to list all files. machine_name% you have mail. |
AaBbCc123 |
What you type, contrasted with onscreen computer output |
machine_name% su Password: |
aabbcc123 |
Placeholder: replace with a real name or value |
The command to remove a file is rm filename. |
AaBbCc123 |
Book titles, new terms, and terms to be emphasized |
Read Chapter 6 in the User's Guide. A cache is a copy that is stored locally. Do not save the file. Note: Some emphasized items appear bold online. |
Shell Prompts in Command Examples
The following table shows the default UNIX® system prompt and superuser prompt for the C shell, Bourne shell, and Korn shell.
Table P-2 Shell Prompts
Shell |
Prompt |
|---|---|
C shell |
machine_name% |
C shell for superuser |
machine_name# |
Bourne shell and Korn shell |
$ |
Bourne shell and Korn shell for superuser |
# |

Previous