Penguin
Annotated edit history of POSIX version 17, including all changes. View license author blame.
Rev Author # Line
14 StuartYeates 1 Acronym for __P__ortable __O__perating __S__ystem __I__nterface Uni__X__.
10 StuartYeates 2
17 LawrenceDoliveiro 3 [ISO]/IEC 9945 / [IEEE] Std 1003.1-1988.
14 StuartYeates 4
16 IanMcDonald 5 An attempt to define a standard interface for all [UNIX] systems from different vendors and fight the "[BSD] vs. System V" split and the tendency of commercial operating systems to fragment and diverge.
10 StuartYeates 6
7 POSIX is a large (some might even say unwieldy) standard (officially [IEEE] Standard 1003) specifying things such as the behaviour (arguments, etc) of standard programs and utilities that must exist on a system and [C] library functions. The theory is that if you write a program that conforms to POSIX standards, it will compile and run on any POSIX-compliant operating system.
12 StuartYeates 8
16 IanMcDonald 9 The current standard is available at: http://www.opengroup.org/onlinepubs/009695399/ but is not for re-distribution. There is also [special permission|http://standards.ieee.org/announcements/pr_linuxman.html] for extracts from the (copyrighted) standard to be used in Linux manual pages.
11 JohnMcPherson 10
14 StuartYeates 11 It used to be significantly harder for individuals to get copies of the standard, leading to comments such as
11 JohnMcPherson 12
16 IanMcDonald 13 <pre>
11 JohnMcPherson 14 /*
15 * ok, as I hadn't got any other source of information about
16 * possible error numbers, I was forced to use the same numbers
17 * as minix.
18 * Hopefully these are posix or something. I wouldn't know (and posix
19 * isn't telling me - they want $$$ for their f***ing standard).
20 ...
21 */
16 IanMcDonald 22 </pre>
11 JohnMcPherson 23
14 StuartYeates 24 in errno.h from the Linux kernel (version 0.01).
10 StuartYeates 25
26 ----
27 Some parts of the standard (particularly the bits that are relevant to the [Linux] [Kernel] and UserSpace:
28
29 1003.1 defines the core functions and behaviours, as well as things like the standard ErrorMessages.
30
31 1003.1b includes real-time extensions.
32
33 1003.2 defines extra things such as standard RegularExpression syntax and behaviour, asynchronous I/O, and real time signal queues.
34
35 See also [POSIXLY_CORRECT].
11 JohnMcPherson 36
10 StuartYeates 37 ----
38 From "The Open Group Base Specification Issue 6":
39 ;:The name POSIX was suggested by Richard Stallman. It is expected to be pronounced pahz-icks, as in positive, not poh-six, or other variations. The pronunciation has been published in an attempt to promulgate a standardized way of referring to a standard operating system interface.
40
41 Standardisation of the the pronounciation of the standards name I think is perhaps taking things too far.
42
43 POSIX® is a registered trademark of the Institute of Electrical and Electronic Engineers, Inc.
44
45 ----
46 As an example what it was like trying to standardise the different functionality of the different unices, consider this from the documentation for gettext(1):
47
16 IanMcDonald 48 <pre>
10 StuartYeates 49 There are two competing methods for language independent messages:
50 the X/Open `catgets' method, and the Uniforum `gettext' method. The
51 `catgets' method indexes messages by integers; the `gettext' method
52 indexes them by their English translations. The `catgets' method has
53 been around longer and is supported by more vendors. The `gettext'
54 method is supported by Sun, and it has been heard that the COSE
55 multi-vendor initiative is supporting it. Neither method is a POSIX
56 standard; the POSIX.1 committee had a lot of disagreement in this area.
57
58 Neither one is in the POSIX standard. There was much disagreement
59 in the POSIX.1 committee about using the `gettext' routines vs.
60 `catgets' (XPG). In the end the committee couldn't agree on anything,
61 so no messaging system was included as part of the standard. I believe
62 the informative annex of the standard includes the XPG3 messaging
63 interfaces, "...as an example of a messaging system that has been
64 implemented..."
16 IanMcDonald 65 </pre>
14 StuartYeates 66 ----
67
68 [POSIX] compliant systems include:
69
70 # [SunOS] / [Solaris]
15 StuartYeates 71 # [HPUX]
14 StuartYeates 72 # [MacOSX]
73 # [Debian]
74 # [RedHat]
15 StuartYeates 75 # [AIX]
16 IanMcDonald 76 # [MicrosoftWindows] (with addons)
15 StuartYeates 77 ...
14 StuartYeates 78
79 Note that the Linux kernel itself is not a full [POSIX] system, because a full system includes things like awk(1) and vi(1).
10 StuartYeates 80
81 ----
82 CategoryStandards

PHP Warning

lib/blame.php:177: Warning: Invalid argument supplied for foreach()