Standards Conformance Guide
  Search only this book
Download this book in PDF

............................Contents


Preface
xix

1. A Look at Some Standardization Organizations
1
...Institute of Electrical and Electronics Engineers (IEEE) and POSIX1
...X/Open 2
...National Institute of Standards and Technology (NIST) 3
...International Organization for Standardization (ISO) and the
......International Electrotechnical Commission (IEC) 3
...The X Consortium 3
...UniForum 4
...American National Standards Institute (ANSI) 4
...The Open Software Foundation 5

2. UNIX System V Release
...4-Based (SVR4) Specifications 7
...UNIX System V Release 4 7
...Application Binary Interface 8
......SunOS Compliance With the ABI Specification 8
......ABI Specifications and Related Publications 9
...System V Interface Definition (SVID) 9
......SunOS Compliance With SVID3 10
......SVID Specification 10
...Device Driver Interface/Driver-Kernel Interface (DDI/DKI) . 10
......SunOS Compliance with the Specification 11
......DDI/DKI and DKI Specifications and Related Publications 11
...Data Link Provider Interface (DLPI) 11
......SunOS Compliance With DLPI 12
......DLPI Specification 12
...Transport Provider Interface 12
......SunOS Compliance with TPI 12

3. X11, PostScript and Sun Microsystems' OpenWindows
13
...OPEN LOOK 13
......Solaris Compliance With OPEN LOOK 15
......OPEN LOOK Specification and Related References 16
......Licensing the OPEN LOOK Trademark 16
...X Window System, Version 11 (X11) 17
...PostScript Language 18
......Solaris Compliance With X11 18
......Solaris Compliance with PostScript 19
......X11 Specification and Related Publications 19

4. Common Desktop Environment
21
...Common Desktop Environment 21
......Developers, End Users, and CDE 22
...Standardizing the Common Desktop Environment 22
......Open Software Foundation/Motif 22
......CDE and Motif 23
......Solaris Compliance With OSF/Motif 24
......The X Window System 25
......CDE Compliance with X11 26
......Solaris Compliance with PostScript 26
...Future Standardization 27
......X/Open CDE Specification 27
......X/Open Calendaring and Scheduling API 28

5. X/Open and XPG3
29
......The X/Open Portability Guide, Issue 3 29
......The X/Open Brand Trademark 30
...X/Open Conformance Statement for Solaris 32
...X/Open Conformance Statement 32
...X/Open Specification and Related Publications 63

6. X/Open and XPG4
65
......The X/Open Portability Guide, Issue 4 65
......The X/Open Brand Trademark 65
...The X/Open Conformance Statement for Solaris 67
...X/Open Conformance Statement 67

7. X/Open Interim UNIX Branding
105
...X/Open Conformance Statement for SPARC 105
...X/Open Conformance Statement 105
...X/Open Conformance Statement for x86 106
...X/Open Conformance Statement 106

8. POSIX.1
109
...Portable Operating System Interface for Computer Environments
......(POSIX.1) 109
......Amending POSIX.1: The IEEE Standards 1003.1b and 1003.1c
..................................................109
...Scope 110
...C Standard Compliance 110
...Audience 110
...Notation Used in the Remainder of this Chapter 111
...Implementation-Defined Areas of POSIX.1 111
...POSIX.1 Section 1: General 111
......1.3.1 Implementation Conformance 111
...POSIX.1 Section 2, Terminology and General Requirements 112
......2.2.2 General Terms 112
......2.3 General Concepts 113
......2.4 Error Numbers 114
......2.5 Primitive System Data Types 115
......2.6 Environment Description 116
......2.7 C Language Definitions 116
......2.8 Numerical Limits 116
......2.9 Symbolic Constants 118
...POSIX.1 Section 3, Process Primitives 120
......3.1.1.2 Process Creation: Description 120
......3.1.1.4 Errors 120
......3.1.2.2 Execute a File: Description 120
......3.1.2.4 Execute a File: Errors 121
......3.2.1.2 Wait for Process Termination: Description 122
......3.2.2.2 Terminate a Process: Description 122
......3.3.1.1 Signal Names 123
......3.3.1.2 Signal Generation and Delivery 123
......3.3.1.3 Signal Actions 124
......3.3.2.2 Send a Signal to a Process: Description 125
......3.3.3.4 Manipulate Signal Sets: Errors 125
......3.3.4.2 Examine and Change Signal Action: Description 126
......3.3.6.4 Examine Pending Signals: Errors 126
......3.3.8.2 Synchronously Accept a Signal: Description 126
...POSIX.1 Section 4, Process Environment 126
......4.2.4.4 Get User Name: Errors 126
......4.4.1.2 Get System Name: Description 127
......4.5.1.4 Get System Time: Errors 127
......4.6.1.4 Environment Variables: Errors 127
......4.7.1.4 Generate Terminal Pathname: Errors 127
......4.7.2.4 Determine Terminal Device Name: Errors 128
...POSIX.1 Section 5, Files and Directories 128
......5.1.1 Format of Directory Entries 128
......5.1.2.4 Directory Operations: Errors 128
......5.2.2.4 Get Working Directory Pathname: Errors 129
......5.3.1.2 Open a File: Description 129
......5.3.3.2 Set File Creation Mask: Description 130
......5.3.4.2 Link to a File: Description 130
......5.4.1.2 Make a Directory: Description 130
......5.4.2.2 Make a FIFO Special File: Description 131
......5.5.1.2 Remove Directory Entries: Description 131
......5.5.1.4 Remove Directory Entries: Errors 131
......5.5.2.2 Remove a Directory: Description 131
......5.5.2.4 Remove a Directory: Errors 132
......5.5.3.2 Rename a File: Description 132
......5.5.3.4 Rename a File: Errors 132
......5.6.1.2 File Characteristics: File Modes 133
......5.6.2.2 Get File Status: Description 133
......5.6.3.4 Check File Accessibility: Errors 133
......5.6.4.2 Change File Modes: Description 133
......5.6.5.2 Change Owner and Group of a File: Description 134
......5.6.5.4 Change Owner and Group of a File: Errors 134
......5.7.1.4 Get Configurable Pathname Variables: Errors 134
...POSIX.1 Section 6, Input and Output Primitives 135
......6.3.1.2 Close a File: Description 135
......6.4.1.2 Read from a File: Description 136
......6.4.2.2 Write to a File: Description 136
......6.5.2.2 File Control: Description 136
......6.5.3.2 Reposition Read/Write File Offset: Description 137
......6.6 File Synchronization 137
......6.6.1.2 Synchronize a File's State: Description 137
......6.7.1.1 Data Definitions for Asynchronous Input and Output:
........Asynchronous I/O Control Block 137
......6.7.7.2 Cancel Asynchronous I/O Request: Description 138
...POSIX.1 Section 7, Device- and Class-Specific Functions 138
......7.1 General Terminal Interface 138
......7.1.1.3 The Controlling Terminal 138
......7.1.1.5 Input Processing and Reading Data 139
......7.1.1.6 Canonical Mode Input Processing 139
......7.1.1.7 Noncanonical Mode Input Processing 139
......7.1.1.8 Writing Data and Output Processing 140
......7.1.1.9 Special Characters 140
......7.1.2.2 Input Modes 141
......7.1.2.3 Output Modes 141
......7.1.2.4 Control Modes 142
......7.1.2.5 Local Modes 142
......7.1.2.6 Special Control Characters 143
......7.1.3.4 Baud Rate Functions: Errors 143
......7.2.1.2 Get and Set State: Description 144
......7.2.2.2 Line Control Functions: Description 144
...POSIX.1 Section 8, Language-Specific Services for the C
......Programming Language 144
......8.1.1 Referenced C Language Routines, Extensions to Time
........Functions 144
......8.1.2.2 Extensions to setlocale(): Description 145
......8.2.2.4 Open a Stream on a File Descriptor: Errors 145
......8.2.3 Interactions of Other File-Type C Functions 145
......8.2.7.4 Stdio with Explicit Client Locking: Errors 146
......8.3.2.2 Set Time Zones: Description 146
......8.3.4.4 Find String Token: Errors 146
......8.3.5.4 ASCII Time Representation: Errors 146
......8.3.6.4 Current Time Representation: Errors 147
......8.3.7.4 Coordinated Universal Time: Errors 147
......8.3.8.4 Local Time: Errors 147
...POSIX.1 Section 9, System Databases 147
......9.1 System Databases 147
......9.2.1.4 Group Database Access: Errors 147
......9.2.2.4 User Database Access: Errors 148
...POSIX.1 Section 10, Data Interchange Format 148
......10.1 Archive/Interchange File Format 148
......10.1.1 Extended tar Format 148
......10.1.2.1 Header 149
......10.1.2.2 File Name 149
......10.1.3 Multiple Volumes 149
...POSIX.1 Section 11, Synchronization 150
......11.2.3.2 Initialize/Open a Named Semaphore: Description 150
......11.3.1.2 Mutex Initialization Attributes: Description 150
......11.4.1.2 Condition Variable Initialization Attributes:
........Description 150
...POSIX.1 Section 12, Memory Management 150
......12.1.1.2 Lock/Unlock a Process's Address Space: Description
..................................................151
......12.1.1.4 Lock/Unlock a Process's Address Space: Errors 151
......12.1.2.4 Lock/Unlock a Range of Process Address Space: Errors
..................................................151
......12.2.1.2 Map Process Addresses to a Memory Object:
........Description 151
......12.3.1.2 Open a Shared Memory Object: Description 152
......12.4.1.1.1 Process Memory Locking: Models 152
...POSIX.1 Section 13, Execution Scheduling 152
......13.2 Scheduling Policies 152
......13.2.3 Scheduling Policies: SCHED_OTHER 152
......13.3.1.2 Set Scheduling Parameters: Description 153
......13.3.3.2 Set Scheduling Policy and Scheduling Parameters:
........Description 153
......13.4.1 Thread Scheduling Attributes 154
......13.4.2 Scheduling Contention Scope 154
......13.4.3 Scheduling Allocation Domain 155
......13.5.2.2 Dynamic Thread Scheduling Parameters Access:
........Description 156
...POSIX.1 Section 14, Clocks and Timers 156
......14.2.1.2 Clock and Timer Functions: Description 156
......14.2.2.2 Create a Per-Process Timer: Description 157
......14.2.4.2 Per-Process Timers: Description 157
...POSIX.1 Section 15, Message Passing 157
......15.1.1. Data Definitions for Message Queues: Data Structures
..................................................157
......15.2.1.2 Open a Message Queue: Description 158

9. POSIX.2
159
...Portable Operating System Interface -Part 2: Shell and Utilities
......(POSIX.2) 159
...Scope 159
...Audience 160
...Notation Used in the Remainder of this Chapter 160
...Implementation-defined Areas of POSIX.2 161
...POSIX.2 Section 1, General 161
......1.3.1 Implementation Conformance 161
...POSIX.2 Section 2, Terminology and General Requirements 162
......2.2.2 General Terms 162
......2.4 Character Set 164
......2.4.1 Character Set Description File 164
......2.5 Locale 164
......2.5.2: Locale Definition 165
......2.5.2.1 LC_CTYPE 165
......2.5.2.5 LC_TIME 165
......2.5.3 Locale Definition Grammar 166
......2.6 Environment Variables 166
......2.9.1.5 File Removal 167
......2.11.5.2 Input Files 167
......2.14 Terminal Characteristics 168
...POSIX.2 Section 3, Shell Command Language 169
......3.5.3 Variables 169
......3.7 Redirection 169
...POSIX.2 section 4, Execution Environment Utilities 169
......4.1.7.3 Variables and Special Variables 169
......4.1.7.6.2.3 Input/Output and General Functions 170
......4.1.7.8 awk Lexical Conventions 170
......4.2.2 basename - Return Nondirectory Portion of Pathname:
........Description 170
......4.5.2 cd - Change Working Directory: Description 170
......4.5.4 Operands 170
......4.7.2 chmod - Change File Modes: Description 171
......4.7.7 chmod - Extended Description 171
......4.13.2 cp - Copy Files: Description 172
......4.13.3 Options 173
......4.18.2 dirname - Return Directory Portion of Pathname:
........Description 173
......4.19.4 Operands 173
......4.20.7.3.14 List Command 174
......4.24.4 Operands 174
......4.30.2 id - Return User Identity: Description 174
......4.33.2 ln - Link Files: Description 175
......4.33.4 Operands 175
......4.34.3 Options 175
......4.34.4 Operands 175
......4.35.2 localedef - Define Locale Environment: Description 175
......4.36.2 logger - Log Messages: Description 176
......4.39.3 Options 176
......4.39.5.3 Environment Variables 176
......4.39.6.1 Standard Output 177
......4.40.6.3 Output Files 177
......4.40.7.1 mailx Internal Variables 178
......4.40.7.3 mailx Command Escapes 178
......4.43.2 mv - Move Files: Description 178
......4.45.7 Extended Description 178
......4.48.2 pax - Portable Archive Interchange: Description 180
......4.48.3 Options 180
......4.48.5.2 Input Files 181
......4.48.6.1 Standard Output 181
......4.48.6.3 Output Files 181
......4.55.7.3 sed Editing Commands 181
......4.56.5.3 Environment Variables 182
......4.59.2 stty - Set the Options for a Terminal: Description 182
......4.59.4.4 Local Modes 183
......4.59.4.6 Combination Modes 183
......4.62.4 Operands 183
......4.63.3 Options 184
......4.64.7 Extended Description 184
......4.68.2 uname - Return System Name: Description 184
......4.68.6.1 Standard Output 185
...POSIX.2 Section 5, User Portability Utilities Option 185
......5.2.2 Execute Commands at a Later Time: Description 185
......5.2.3 Options 185
......5.2.4 Operands 186
......5.5.2 crontab - Schedule Periodic Background Work:
........Description 186
......5.7.4 Extended Description 186
......5.7.7 Operands 186
......5.8.6.1 Standard Output 187
......5.10.7.2.5 chdir 187
......5.10.7.2.13 list 187
......5.10.7.2.14 map 188
......5.10.7.2.21 print 188
......5.10.7.2.29 source 188
......5.10.7.2.37 write 188
......5.10.7.5.8 list 188
......5.10.7.5.12 paragraphs, para 189
......5.10.7.5.18 sections 189
......5.10.7.5.24 tags 189
......5.10.7.5.28 window 189
......5.12.2 fc - Process Command History List: Description 189
......5.12.5.3 Environment Variables 190
......5.14.2 file - Determine File Type: Description 190
......5.16.2 man - Display System Documentation: Description 191
......5.16.6.1 Standard Output 191
......5.17.2 mesg - Permit or Deny Messages: Description 191
......5.18.3 Options 191
......5.18.7 Extended Description 191
......5.18.7.1 Help 192
......5.18.7.24 Invoke Editor 192
......5.19.2 newgrp - Change to a New Group: Description 192
......5.20.2 nice - Invoke a Utility with an Altered System
........Scheduling Priority: Description 193
......5.20.3 Options 193
......5.21.5.2 Input Files 193
......5.21.6.1 Standard Output 194
......5.23.2 ps - Report Process Status: Description 194
......5.23.3 Options 195
......5.23.61 Standard Output 195
......5.24.2 renice - Set System Scheduling Priorities of Running
........Processes: Description 196
......5.24.3 Options 197
......5.26.2 strings - Find Printable Strings in Files: Description 197
......5.26.3 Options 197
......5.28.2 talk - Talk to Another User: Description 197
......5.30.4 Operands 198
......5.36.2 who - Display Who is on the System: Description. 198
......5.36.6.1 Standard Output 198
......5.37.2 write - Write to Another User: Description 199
...POSIX.2 Section 6, Software Development Utilities Option 199
......6.2.7.1 Makefile Syntax 199
......6.2.7.2 Makefile Execution 200
......6.2.7.3 Target Rules 200
......6.2.7.4 Macros 200
...POSIX.2 Annex A: C Language Development Utilities Option 201
......A.1.3 Options 201
......A.1.4 Operands 201
......A.1.5.2 Input Files 202
......A.1.7.2 External Symbols 202
......A.2.6.1 Standard Output 203
......A.2.6.2 Standard Error 203
......A.2.7 Extended Description 206
......A.2.7.1 lex Definitions 206
......A.2.7.4 lex Regular Expressions 207
......A.3.6.3.3 yacc Description File 207
......A.3.7.9 Limits 207

10. Other Standards
209
...ANSI C Programming Language 209
......Compliance With the ANSI C Standard 210
......ANSI C Specification and Related Publications 210
...ANSI/IEEE 754 210
......Compliance With ANSI/IEEE 754 210
......ANSI/IEEE 754-1985 Specification and Related Publications 211
...International Standards Organization (ISO) 8859-1 211
......Compliance With ISO 8859-1 211
......ISO 8859 Standard 211
...Federal Information Processing Standard (FIPS) 151 212
......Compliance With FIPS 151 212
......FIPS 151 Specification 212
...Federal Information Processing Standard (FIPS) 158 212
......Compliance With FIPS 158 213
......FIPS 158 Specification and Related Publications 213
...The Application Binary Interface (ABI) 213
......Compliance With the ABI 214
......ABI Publication 214
...SPARC Compliance Definition (SCD) 214
......Compliance With the SCD 214
......SPARC Compliance Definition Specification 214