Penguin

Differences between version 14 and predecessor to the previous major change of POSIX.

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 14 Last edited on Thursday, September 2, 2004 12:58:58 am by StuartYeates Revert
Older page: version 11 Last edited on Monday, February 16, 2004 1:18:20 pm by JohnMcPherson Revert
@@ -1,12 +1,15 @@
-In the 1980s, with the various [Unix] vendors such as [IBM], [HP], Digital and SunMicrosystems each adding their own features, unix was in danger of becoming fragmented, making it harder to write portable programs . (Also the "BSD vs. System V" split.)  
+Acronym for __P__ortable __O__perating __S__ystem __I__nterface Uni__X__
  
-The name POSIX more correctly refers to a family of related standards: IEEE Std 1003.n and the parts of ISO/IEC 9945, although originally was just the original IEEE Std 1003.1-1988. POSIX means __p__ortable __o__perating __s__ystem __i__nterface . ( the x is from uni__x__ ?)  
+[ ISO] /IEC 9945 / IEEE Std 1003.1-1988.  
+  
+An attempt to define a standard interface for all [UNIX] systems from different vendors and fight the "[BSD] vs . System V" split and the tendancy of commercial operating systems to fragment and diverge.  
  
 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. 
  
-----  
-From a comment in errno .h from the Linux kernel (version .01 ):  
+The current standard is avaliable 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.  
+  
+It used to be significantly harder for individuals to get copies of the standard, leading to comments such as  
  
  /* 
  * ok, as I hadn't got any other source of information about 
  * possible error numbers, I was forced to use the same numbers 
@@ -15,9 +18,9 @@
  * isn't telling me - they want $$$ for their f***ing standard). 
  ... 
  */ 
  
-In early 2004, [permission was granted|http://standards .ieee.org/announcements/pr_linuxman.html] for extracts from the (copyrighted ) standard to be used in Linux manual pages
+in errno .h from the Linux kernel (version .01 ). 
  
 ---- 
 Some parts of the standard (particularly the bits that are relevant to the [Linux] [Kernel] and UserSpace: 
  
@@ -38,9 +41,8 @@
 POSIX® is a registered trademark of the Institute of Electrical and Electronic Engineers, Inc. 
  
 ---- 
 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): 
-  
  
  There are two competing methods for language independent messages: 
  the X/Open `catgets' method, and the Uniforum `gettext' method. The 
  `catgets' method indexes messages by integers; the `gettext' method 
@@ -56,7 +58,19 @@
  so no messaging system was included as part of the standard. I believe 
  the informative annex of the standard includes the XPG3 messaging 
  interfaces, "...as an example of a messaging system that has been 
  implemented..." 
+----  
+  
+[POSIX] compliant systems include:  
+  
+# [SunOS] / [Solaris]  
+# [HP-UX]  
+# [MacOSX]  
+# [Debian]  
+# [RedHat]  
+# ...  
+  
+Note that the Linux kernel itself is not a full [POSIX] system, because a full system includes things like awk(1) and vi(1).  
  
 ---- 
 CategoryStandards