| |
Preface | xiii |
1. A Look at Some Standards Organizations | 1 |
| ...Institute of Electrical and Electronics Engineers (IEEE) and POSIX | 1 |
| ...X/Open | 2 |
| ...National Institute of Standards and Technology (NIST) | 3 |
| ...International Organization for Standardization (ISO) and the |
| ......International Electrotechnical Commission (IEC) | 3 |
| ...UniForum | 3 |
| ...American National Standards Institute (ANSI) | 4 |
2. UNIX System V Release |
| ...4-Based (SVR4) Specifications | 5 |
| ...UNIX System V Release 4 (SVR4) | 5 |
| ...Application Binary Interface | 6 |
| ......SunOS Compliance With the ABI Specification | 6 |
| ......ABI Specifications and Related Publications | 7 |
| ...System V Interface Definition (SVID) | 8 |
| |
| ......SunOS Compliance With SVID3 | 8 |
| ......SVID Specification | 9 |
| ...Device Driver Interface/Driver-Kernel Interface (DDI/DKI) . | 9 |
| ......SunOS Compliance with the Specification | 9 |
| ......DDI/DKI and DKI Specifications and Related Publications | 9 |
| ...Data Link Provider Interface (DLPI) | 10 |
| ......SunOS Compliance With DLPI | 10 |
| ......DLPI Specification | 10 |
| ...Transport Provider Interface | 11 |
| ......SunOS Compliance with TPI | 11 |
| ...OPEN LOOK | 11 |
| ......Solaris Compliance With OPEN LOOK | 13 |
| ......OPEN LOOK Specification and Related References | 14 |
| ......Licensing the OPEN LOOK Trademark | 14 |
3. X11, PostScript and Sun Microsystems' OpenWindows | 15 |
| ...X Window System, Version 11 (X11) | 15 |
| ...PostScript Language | 16 |
| ......Solaris Compliance With X11 | 17 |
| ......Solaris Compliance with PostScript | 17 |
| ......X11 Specification and Related Publications | 17 |
4. X/Open and XPG3 | 19 |
| ......The X/Open Portability Guide, Issue 3 | 19 |
| ......The X/Open Brand Trademark | 20 |
| ...The X/Open Conformance Statement for Solaris | 22 |
| |
| ...X/Open Conformance Statement | 22 |
| ...X/Open Specification and Related Publications | 55 |
5. X/Open and XPG4 | 57 |
| ......The X/Open Portability Guide, Issue 4 | 57 |
| ......The X/Open Brand Trademark | 57 |
| ...The X/Open Conformance Statement for Solaris | 59 |
| ...X/Open Conformance Statement | 59 |
6. POSIX.1 | 83 |
| ...Portable Operating System Interface for Computer Environments |
| ......(POSIX.1) | 83 |
| ......Amending POSIX.1: The IEEE Standard 1003.1b | 83 |
| ...Scope | 84 |
| ...C Standard Compliance | 84 |
| ...Audience | 84 |
| ...Notation Used in the Remainder of this Chapter | 85 |
| ...Implementation-Defined Areas of POSIX.1 | 85 |
| ...POSIX.1 Section 1, General | 85 |
| ......1.3.1 Implementation Conformance | 85 |
| ...POSIX.1 Section 2, Terminology and General Requirements | 86 |
| ......2.2.2 General Terms | 86 |
| ......2.3 General Concepts | 88 |
| ......2.4 Error Numbers | 88 |
| ......2.5 Primitive System Data Types | 90 |
| ......2.6 Environment Description | 90 |
| |
| ......2.7 C Language Definitions | 90 |
| ......2.8 Numerical Limits | 91 |
| ......2.9 Symbolic Constants | 93 |
| ...POSIX.1 Section 3, Process Primitives | 94 |
| ......3.1.1.2 Process Creation: Description | 94 |
| ......3.1.1.4 Errors | 94 |
| ......3.1.2.2 Execute a File: Description | 95 |
| ......3.1.2.4 Execute a File: Errors | 96 |
| ......3.2.1.2 Wait for Process Termination: Description | 97 |
| ......3.2.2.2 Terminate a Process: Description | 97 |
| ......3.3.1.1 Signal Names | 97 |
| ......3.3.1.2 Signal Generation and Delivery | 98 |
| ......3.3.1.3 Signal Actions | 99 |
| ......3.3.2.2 Send a Signal to a Process: Description | 100 |
| ......3.3.3.4 Manipulate Signal Sets: Errors | 100 |
| ......3.3.4.2 Examine and Change Signal Action: Description | 100 |
| ......3.3.6.4 Examine Pending Signals: Errors | 100 |
| ...POSIX.1 Section 4, Process Environment | 101 |
| ......4.2.4.4 Get User Name: Errors | 101 |
| ......4.4.1.2 Get System Name: Description | 101 |
| ......4.5.1.4 Get System Time: Errors | 101 |
| ......4.6.1.4 Environment Variables: Errors | 101 |
| ......4.7.1.4 Generate Terminal Pathname: Errors | 102 |
| ......4.7.2.4 Determine Terminal Device Name: Errors | 102 |
| |
| ...POSIX.1 Section 5, Files and Directories | 102 |
| ......5.1.1 Format of Directory Entries | 102 |
| ......5.1.2.4 Directory Operations: Errors | 102 |
| ......5.2.2.4 Get Working Directory Pathname: Errors | 103 |
| ......5.3.1.2 Open a File: Description | 104 |
| ......5.3.3.2 Set File Creation Mask: Description | 104 |
| ......5.3.4.2 Link to a File: Description | 104 |
| ......5.4.1.2 Make a Directory: Description | 105 |
| ......5.4.2.2 Make a FIFO Special File: Description | 105 |
| ......5.5.1.2 Remove Directory Entries: Description | 106 |
| ......5.5.1.4 Remove Directory Entries: Errors | 106 |
| ......5.5.2.2 Remove a Directory: Description | 106 |
| ......5.5.2.4 Remove a Directory: Errors | 107 |
| ......5.5.3.2 Rename a File: Description | 107 |
| ......5.5.3.4 Rename a File: Errors | 107 |
| ......5.6.1.2 File Characteristics: File Modes | 108 |
| ......5.6.2.2 Get File Status: Description | 108 |
| ......5.6.3.4 Check File Accessibility: Errors | 108 |
| ......5.6.4.2 Change File Modes: Description | 108 |
| ......5.6.5.2 Change Owner and Group of a File: Description | 109 |
| ......5.6.5.4 Change Owner and Group of a File: Errors | 109 |
| ......5.7.1.4 Get Configurable Pathname Variables: Errors | 109 |
| ...POSIX.1 Section 6, Input and Output Primitives | 110 |
| ......6.3.1.2 Close a File: Description | 110 |
| |
| ......6.4.1.2 Read from a File: Description | 111 |
| ......6.4.2.2 Write to a File: Description | 111 |
| ......6.5.2.2 File Control: Description | 112 |
| ......6.5.3.2 Reposition Read/Write File Offset: Description | 112 |
| ......6.6 File Synchronization | 112 |
| ......6.6.1.2 Synchronize a File's State: Description | 112 |
| ......6.7.1.1 Data Definitions for Asynchronous Input and Output: |
| ........Asynchronous I/O Control Block | 113 |
| ......6.7.7.2 Cancel Asynchronous I/O Request: Description | 113 |
| ...POSIX.1 Section 7, Device- and Class-Specific Functions | 113 |
| ......7.1 General Terminal Interface | 113 |
| ......7.1.1.3 The Controlling Terminal | 114 |
| ......7.1.1.5 Input Processing and Reading Data | 114 |
| ......7.1.1.6 Canonical Mode Input Processing | 114 |
| ......7.1.1.7 Noncanonical Mode Input Processing | 115 |
| ......7.1.1.8 Writing Data and Output Processing | 115 |
| ......7.1.1.9 Special Characters | 115 |
| ......7.1.2.2 Input Modes | 116 |
| ......7.1.2.3 Output Modes | 117 |
| ......7.1.2.4 Control Modes | 118 |
| ......7.1.2.5 Local Modes | 118 |
| ......7.1.2.6 Special Control Characters | 119 |
| ......7.1.3.4 Baud Rate Functions: Errors | 119 |
| ......7.2.1.2 Get and Set State: Description | 119 |
| |
| ......7.2.2.2 Line Control Functions: Description | 119 |
| ...POSIX.1 Section 8, Language-Specific Services for the C |
| ......Programming Language | 120 |
| ......8.1.1 Referenced C Language Routines, Extensions to Time |
| ........Functions | 120 |
| ......8.1.2.2 Extensions to setlocale(): Description | 120 |
| ......8.2.2.4 Open a Stream on a File Descriptor: Errors | 121 |
| ......8.2.3 Interactions of Other File-Type C Functions | 121 |
| ......8.3.2.2 Set Time Zones: Description | 121 |
| ...POSIX.1 Section 9, System Databases | 122 |
| ......9.1 System Databases | 122 |
| ......9.2.1.4 Group Database Access: Errors | 122 |
| ......9.2.2.4 User Database Access: Errors | 122 |
| ...POSIX.1 Section 10, Data Interchange Format | 123 |
| ......10.1 Archive/Interchange File Format | 123 |
| ......10.1.1 Extended tar Format | 123 |
| ......10.1.2.1 Header | 123 |
| ......10.1.2.2 File Name | 124 |
| ......10.1.3 Multiple Volumes | 124 |
| ...POSIX.1 Section 11, Synchronization | 124 |
| ......11.2.3.2 Initialize/Open a Named Semaphore: Description | 124 |
| ...POSIX.1 Section 12, Memory Management | 125 |
| ......12.1.1.2 Lock/Unlock a Process's Address Space: Description |
| ........125 |
| ......12.1.1.4 Lock/Unlock a Process's Address Space: Errors | 125 |
| |
| ......12.1.2.4 Lock/Unlock a Range of Process Address Space: Errors |
| ........126 |
| ......12.2.1.2 Map Process Addresses to a Memory Object: |
| ........Description | 126 |
| ......12.3.1.2 Open a Shared Memory Object: Description | 126 |
| ......12.4.1.1.1 Process Memory Locking: Models | 126 |
| ...POSIX.1 Section 13, Execution Scheduling | 127 |
| ......13.2 Scheduling Policies | 127 |
| ......13.2.3 Scheduling Policies: SCHED_OTHER | 127 |
| ......13.3.1.2 Set Scheduling Parameters: Description | 127 |
| ......13.3.3.2 Set Scheduling Policy and Scheduling Parameters: |
| ........Description | 128 |
| ...POSIX.1 Section 14, Clocks and Timers | 128 |
| ......14.2.1.2 Clock and Timer Functions: Description | 128 |
| ......14.2.2.2 Create a Per-Process Timer: Description | 129 |
| ......14.2.4.2 Per-Process Timers: Description | 129 |
| ...POSIX.1 Section 15, Message Passing | 129 |
| ......15.1.1. Data Definitions for Message Queues: Data Structures |
| ........129 |
| ......15.2.1.2 Open a Message Queue: Description | 130 |
7. De Jure Standards | 131 |
| ...ANSI C Programming Language | 131 |
| ......Compliance With the ANSI C Standard | 132 |
| ......ANSI C Specification and Related Publications | 132 |
| ...ANSI/IEEE 754 | 132 |
| ......Compliance With ANSI/IEEE 754 | 132 |
| |
| ......ANSI/IEEE 754-1985 Specification and Related Publications | 133 |
| ...International Standards Organization (ISO) 8859-1 | 133 |
| ......Compliance With ISO 8859-1 | 133 |
| ......ISO 8859 Standard | 133 |
| ...Federal Information Processing Standard (FIPS) 151 | 134 |
| ......Compliance With FIPS 151 | 134 |
| ......FIPS 151 Specification | 134 |
| ...Federal Information Processing Standard (FIPS) 158 | 134 |
| ......Compliance With FIPS 158 | 135 |
| ......FIPS 158 Specification and Related Publications | 135 |
| ...The Application Binary Interface (ABI) | 135 |
| ......Compliance With the ABI | 136 |
| ......ABI Publication | 136 |
| ...SPARC Compliance Definition (SCD) | 136 |
| ......Compliance With the SCD | 136 |
| ......SPARC Compliance Definition Specification | 136 |