1STANDARDS(7)               Linux Programmer's Manual              STANDARDS(7)
2
3
4

NAME

6       standards - C and UNIX Standards
7

DESCRIPTION

9       The  CONFORMING TO section that appears in many manual pages identifies
10       various standards to which the documented interface conforms.  The fol‐
11       lowing list briefly describes these standards.
12
13       V7     Version  7  (also  known  as  Seventh Edition) UNIX, released by
14              AT&T/Bell Labs in 1979.  After this point, UNIX systems diverged
15              into two main dialects: BSD and System V.
16
17       4.2BSD This is an implementation standard defined by the 4.2 release of
18              the Berkeley Software Distribution, released by  the  University
19              of  California at Berkeley.  This was the first Berkeley release
20              that contained a TCP/IP stack and the sockets API.   4.2BSD  was
21              released in 1983.
22
23              Earlier  major  BSD  releases included 3BSD (1980), 4BSD (1980),
24              and 4.1BSD (1981).
25
26       4.3BSD The successor to 4.2BSD, released in 1986.
27
28       4.4BSD The successor to 4.3BSD, released in 1993.  This  was  the  last
29              major Berkeley release.
30
31       System V
32              This  is  an implementation standard defined by AT&T's milestone
33              1983 release of its commercial System  V  (five)  release.   The
34              previous major AT&T release was System III, released in 1981.
35
36       System V release 2 (SVr2)
37              This  was the next System V release, made in 1985.  The SVr2 was
38              formally described in the System V Interface Definition  version
39              1 (SVID 1) published in 1985.
40
41       System V release 3 (SVr3)
42              This  was the successor to SVr2, released in 1986.  This release
43              was formally described in the System V Interface Definition ver‐
44              sion 2 (SVID 2).
45
46       System V release 4 (SVr4)
47              This  was the successor to SVr3, released in 1989.  This version
48              of System V is described in the "Programmer's Reference  Manual:
49              Operating  System  API  (Intel processors)" (Prentice-Hall 1992,
50              ISBN 0-13-951294-2) This release was formally described  in  the
51              System V Interface Definition version 3 (SVID 3), and is consid‐
52              ered the definitive System V release.
53
54       SVID 4 System V Interface Definition version 4, issued in 1995.  Avail‐
55              able online at ⟨http://www.sco.com/developers/devspecs/⟩.
56
57       C89    This was the first C language standard, ratified by ANSI (Ameri‐
58              can National Standards Institute) in 1989 (X3.159-1989).   Some‐
59              times  this  is  known  as ANSI C, but since C99 is also an ANSI
60              standard, this term is ambiguous.  This standard was also  rati‐
61              fied  by  ISO  (International  Standards  Organization)  in 1990
62              (ISO/IEC 9899:1990), and is thus occasionally referred to as ISO
63              C90.
64
65       C99    This  revision of the C language standard was ratified by ISO in
66              1999    (ISO/IEC    9899:1999).      Available     online     at
67http://www.open-std.org/jtc1/sc22/wg14/www/standards⟩.
68
69       C11    This  revision of the C language standard was ratified by ISO in
70              2011 (ISO/IEC 9899:2011).
71
72              LFS The Large File  Summit  specification,  completed  in  1996.
73              This  specification  defined mechanisms that allowed 32-bit sys‐
74              tems to support the use of large files (i.e., 64-bit  file  off‐
75              sets).  See ⟨https://www.opengroup.org/platform/lfs.html⟩.
76
77       POSIX.1-1988
78              This  was the first POSIX standard, ratified by IEEE as IEEE Std
79              1003.1-1988, and subsequently adopted (with minor revisions)  as
80              an ISO standard in 1990.  The term "POSIX" was coined by Richard
81              Stallman.
82
83       POSIX.1-1990
84              "Portable Operating  System  Interface  for  Computing  Environ‐
85              ments".   IEEE  1003.1-1990  part  1,  ratified  by  ISO in 1990
86              (ISO/IEC 9945-1:1990).
87
88       POSIX.2
89              IEEE Std 1003.2-1992, describing commands and  utilities,  rati‐
90              fied by ISO in 1993 (ISO/IEC 9945-2:1993).
91
92       POSIX.1b (formerly known as POSIX.4)
93              IEEE  Std 1003.1b-1993, describing real-time facilities for por‐
94              table operating  systems,  ratified  by  ISO  in  1996  (ISO/IEC
95              9945-1:1996).
96
97       POSIX.1c  (formerly known as POSIX.4a)
98              IEEE  Std 1003.1c-1995, which describes the POSIX threads inter‐
99              faces.
100
101       POSIX.1d
102              IEEE Std 1003.1c-1999, which describes additional real-time  ex‐
103              tensions.
104
105       POSIX.1g
106              IEEE  Std 1003.1g-2000, which describes networking APIs (includ‐
107              ing sockets).
108
109       POSIX.1j
110              IEEE Std 1003.1j-2000, which describes advanced real-time exten‐
111              sions.
112
113       POSIX.1-1996
114              A  1996  revision  of  POSIX.1  which  incorporated POSIX.1b and
115              POSIX.1c.
116
117       XPG3   Released in 1989, this was  the  first  release  of  the  X/Open
118              Portability   Guide   to   be   based   on   a   POSIX  standard
119              (POSIX.1-1988).  This multivolume guide  was  developed  by  the
120              X/Open Group, a multivendor consortium.
121
122       XPG4   A  revision  of  the X/Open Portability Guide, released in 1992.
123              This revision incorporated POSIX.2.
124
125       XPG4v2 A 1994 revision of XPG4.  This is also referred to as Spec 1170,
126              where  1170 referred to the number of interfaces defined by this
127              standard.
128
129       SUS (SUSv1)
130              Single UNIX Specification.  This was a repackaging of XPG4v2 and
131              other  X/Open standards (X/Open Curses Issue 4 version 2, X/Open
132              Networking Service (XNS) Issue 4).  Systems conforming  to  this
133              standard can be branded UNIX 95.
134
135       SUSv2  Single UNIX Specification version 2.  Sometimes also referred to
136              (incorrectly) as XPG5.  This standard appeared in 1997.  Systems
137              conforming  to  this  standard can be branded UNIX 98.  See also
138http://www.unix.org/version2/⟩.)
139
140       POSIX.1-2001, SUSv3
141              This was a 2001  revision  and  consolidation  of  the  POSIX.1,
142              POSIX.2, and SUS standards into a single document, conducted un‐
143              der the auspices of the Austin  Group  ⟨http://www.opengroup.org
144              /austin/⟩.     The    standard    is    available    online   at
145http://www.unix.org/version3/⟩.
146
147              The standard defines two levels of  conformance:  POSIX  confor‐
148              mance,  which is a baseline set of interfaces required of a con‐
149              forming system; and XSI Conformance, which additionally mandates
150              a  set  of  interfaces  (the "XSI extension") which are only op‐
151              tional for POSIX conformance.   XSI-conformant  systems  can  be
152              branded UNIX 03.
153
154              The POSIX.1-2001 document is broken into four parts:
155
156              XBD:  Definitions,  terms,  and concepts, header file specifica‐
157              tions.
158
159              XSH: Specifications of functions (i.e., system calls and library
160              functions in actual implementations).
161
162              XCU:  Specifications  of  commands and utilities (i.e., the area
163              formerly described by POSIX.2).
164
165              XRAT: Informative text on the other parts of the standard.
166
167              POSIX.1-2001 is aligned with C99, so that  all  of  the  library
168              functions   standardized   in   C99  are  also  standardized  in
169              POSIX.1-2001.
170
171              The Single UNIX Specification version 3  (SUSv3)  comprises  the
172              Base Specifications containing XBD, XSH, XCU, and XRAT as above,
173              plus X/Open Curses Issue 4 version 2 as an extra volume that  is
174              not in POSIX.1-2001.
175
176              Two  Technical  Corrigenda (minor fixes and improvements) of the
177              original 2001 standard have occurred: TC1 in  2003  and  TC2  in
178              2004.
179
180       POSIX.1-2008, SUSv4
181              Work on the next revision of POSIX.1/SUS was completed and rati‐
182              fied  in  2008.    The   standard   is   available   online   at
183http://www.unix.org/version4/⟩.
184
185              The  changes in this revision are not as large as those that oc‐
186              curred for POSIX.1-2001/SUSv3, but a number  of  new  interfaces
187              are  added  and  various  details of existing specifications are
188              modified.   Many  of  the  interfaces  that  were  optional   in
189              POSIX.1-2001  become mandatory in the 2008 revision of the stan‐
190              dard.  A few interfaces that are  present  in  POSIX.1-2001  are
191              marked as obsolete in POSIX.1-2008, or removed from the standard
192              altogether.
193
194              The revised standard is structured in the same way as its prede‐
195              cessor.   The  Single  UNIX Specification version 4 (SUSv4) com‐
196              prises the Base Specifications containing  XBD,  XSH,  XCU,  and
197              XRAT,  plus X/Open Curses Issue 7 as an extra volume that is not
198              in POSIX.1-2008.
199
200              Again there are two levels of conformance:  the  baseline  POSIX
201              Conformance,  and  XSI Conformance, which mandates an additional
202              set of interfaces beyond those in the base specification.
203
204              In general, where the CONFORMING TO section  of  a  manual  page
205              lists  POSIX.1-2001,  it  can be assumed that the interface also
206              conforms to POSIX.1-2008, unless otherwise noted.
207
208              Technical Corrigendum 1 (minor fixes and improvements)  of  this
209              standard was released in 2013.
210
211              Technical Corrigendum 2 of this standard was released in 2016.
212
213              Further  information  can be found on the Austin Group web site,
214http://www.opengroup.org/austin/⟩.
215
216       SUSv4 2016 edition
217              This is equivalent to POSIX.1-2008, with the addition of Techni‐
218              cal Corrigenda 1 and 2 and the XCurses specification.
219
220       POSIX.1-2017
221              This  revision of POSIX is technically identical to POSIX.1-2008
222              with Technical Corrigenda 1 and 2 applied.
223
224       SUSv4 2018 edition
225              This is equivalent to POSIX.1-2017, with  the  addition  of  the
226              XCurses specification.
227
228       The  interfaces documented in POSIX.1/SUS are available as manual pages
229       under sections 0p (header files), 1p (commands),  and  3p  (functions);
230       thus one can write "man 3p open".
231

SEE ALSO

233       getconf(1),  confstr(3),  pathconf(3),  sysconf(3), attributes(7), fea‐
234       ture_test_macros(7), libc(7), posixoptions(7), system_data_types(7)
235

COLOPHON

237       This page is part of release 5.12 of the Linux  man-pages  project.   A
238       description  of  the project, information about reporting bugs, and the
239       latest    version    of    this    page,    can     be     found     at
240       https://www.kernel.org/doc/man-pages/.
241
242
243
244Linux                             2020-11-01                      STANDARDS(7)
Impressum