What are the differences between POSIX, the Single UNIX Specification, and the Open Group Base Specifications? I think their purpose is for determining if an OS is Unix?
Answers:
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
Method 1
Today, POSIX and SUS are basically the same thing; SUS encompasses a little more.
Quoting here:
Beginning in 1998, a joint working group known as the Austin Group began to develop the combined standard that would be known as the Single UNIX Specification Version 3 and as POSIX:2001 (formally: IEEE Std 1003.1-2001). It was released on January 30, 2002
and
In December 2008, the Austin Group published a new major revision, known as POSIX:2008 (formally: IEEE Std 1003.1-2008). This is the core of the Single UNIX Specification, Version 4
Method 2
Looking at the top of the Open Group Base Specifications, you will see the standard identifier IEEE Std 1003.1-2008. IEEE Std 1003.1 is what is known as POSIX.1 with 2008 just being the latest incarnation. Looking at POSIX on Wikipedia, you will see that the standard contains three parts including:
- Base Definitions, Issue 7
- System Interfaces and Headers, Issue 7
- Commands and Utilities, Issue 7
Basically, POSIX is just the name of the standard developed by the IEEE with the initial version done in 1988. POSIX is not UNIX™ officially simply because IEEE does not own the trademark, but it is the operating system environment and interface found on UNIX™ systems. Later on, The Open Group who controls the UNIX™ trademark got involved with creating a standard based on POSIX called Single UNIX Specification version 2 or SUSv2. Now these two specifications are developed jointly as The Austin Group. The latest version is SUSv4. So, to sum up:
POSIX:2008 = IEEE Std. 1003.1-2008 = SUSv4 = The Open Group Specification Issue 7.
Also, read my answer to What exactly is POSIX?
Method 3
One important “difference” is the XSI (XOPEN) option group, which specifies a number of traditional Unix interfaces which are unlikely to be applicable to a new operating system that’s not “a Unix”. Often people will use “SUS” to refer to the full standard including the XSI option, and “POSIX” to refer to the base standard and possibly the non-Unix-centric option groups.
Successive versions of SUS seem to be gradually deprecating parts of the XSI option that were not really useful for writing portable applications and that instead just reflected legacy implementations, and moving a few of the more-useful parts to the base standard.
All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0