Single UNIX Specification

The Single UNIX Specification (SUS) is the collective name of a family of standards for computer operating systems to qualify for the name "Unix". The SUS is developed and maintained by the Austin Group, based on earlier work by the IEEE and The Open Group.

Contents

History

1980s: Motivation

The SUS emerged from a mid-1980s project to standardize operating system interfaces for software designed for variants of the Unix operating system. The need for standardization arose because enterprises using computers wanted to be able to develop programs that could be used on the computer systems of different manufacturers without reimplementing the programs. Unix was selected as the basis for a standard system interface partly because it was manufacturer-neutral.

1988: POSIX

In 1988, these standards became IEEE 1003 (also registered as ISO/IEC 9945), or POSIX, which loosely stands for Portable Operating System Interface for uniX.

1990s: Spec 1170

In the early 1990s, a separate effort known as the Common API Specification or Spec 1170 was initiated by several major vendors, who formed the COSE alliance in the wake of the Unix wars. This specification became more popular because it was available at no cost, whereas the IEEE charged a substantial fee for access to the POSIX specification.

1997: Single UNIX Specification version 2

In 1997, the Open Group released the Single UNIX Specification Version 2 [1].[1]

This specification consisted of:

and was at the core of the UNIX 98 brand [2].

2001: POSIX:2001, Single UNIX Specification version 3

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.[2]

This standard consisted of:

and is at the core of the UNIX 03 brand [3].

2004: POSIX:2004

In 2004, a new edition of the POSIX:2001 standard was released, incorporating two technical corrigenda. It is called POSIX:2004 (formally: IEEE Std 1003.1-2004) [4].[3]

2008: POSIX:2008

In December 2008, the Austin Group published a new major revision, known as POSIX:2008 (formally: IEEE Std 1003.1-2008) [5].[4][5] This is the core of the Single UNIX Specification, Version 4 [6]

This standard consists of:

Specification

SUSv3 totals some 3700 pages, which are thematically divided into four main parts:

The standard user command line and scripting interface is the POSIX shell, an extension of the Bourne Shell based on an early version of the Korn Shell. Other user-level programs, services and utilities include awk, echo, ed, vi, and hundreds of others. Required program-level services include basic I/O (file, terminal, and network) services. A test suite accompanies the standard. It is called PCTS or the POSIX Certification Test Suite.

Additionally, SUS includes CURSES (XCURSES) specification, which specifies 372 functions and 3 header files. All in all, SUSv3 specifies 1742 interfaces.

Note that a system need not include source code derived in any way from AT&T Unix to meet the specification. For instance, IBM OS/390, now z/OS, qualifies as a "Unix" despite having no code in common.

Marks for compliant systems

There are two official marks for conforming systems

Older UNIX standards (superseded)

Compliance

Registered UNIX systems

AIX

AIX 5L V5.2 with some updates, AIX 5L V5.3 and AIX 6.1, are registered as UNIX 03 compliant. AIX 5L V5.2 is registered as UNIX 98 compliant.

HP/UX

HP-UX 11i V3 Release B.11.31 is registered as UNIX 03 compliant. Previous releases are registered as UNIX 95.

Mac OS X and Mac OS X Server

Mac OS X v10.5 "Leopard" and Mac OS X Server v10.5 "Leopard", released on October 26, 2007, are Open Brand UNIX 03 registered products when run on Intel processors,[7][8] as are Mac OS X v10.6 "Snow Leopard" and Mac OS X Server v10.6 "Snow Leopard".[9]

Reliant UNIX

The last Reliant UNIX versions were registered as UNIX 95 compliant (XPG4 hard branding).

SCO

UnixWare 7.1.3 is registered as UNIX 95 compliant. SCO OpenServer 5 is registered as UNIX 93 compliant.

Solaris

Solaris 10 is registered as UNIX 03 compliant on 32-bit and 64-bit x86 (X86-64) and SPARC systems. Solaris 8 and 9 are registered as UNIX 98 compliant on the same platforms, except that they do not include support for 64-bit x86 systems.

Solaris 2.5.1 was also registered as UNIX 95 compliant on the PReP PowerPC platform in 1996, but the product was withdrawn before more than a few dozen copies had been sold.[10]

Tru64 UNIX

Tru64 UNIX V5.1A and later are registered as UNIX 98 compliant.

z/OS

IBM z/OS 1.2 and higher is registered as UNIX 95 compliant. z/OS 1.9, released on September 28, 2007, and subsequent releases "better align" with UNIX 03.[11]

Other

Other operating systems registered as UNIX 95 or UNIX 93 compliant:

Non-registered Unix-like systems

Vendors of Unix-like systems such as Linux and FreeBSD do not typically certify their distributions, as the cost of certification and the rapidly changing nature of such distributions make the process too expensive to sustain.[13]

BSD descendants

Linux

No Linux distribution has been registered as SUS compliant.

The Linux Standard Base was formed in 2001 as an attempt to standardize the internal structures of Linux-based systems for increased compatibility. It is based on, and also extends in several areas, the POSIX specifications, the Single UNIX Specification and other open standards. It is de facto accepted and followed by many Linux distributions.

See also

Notes

References

  1. ^ "The Open Group Announces Enhanced Single UNIX Specification" (Press release). The Open Group. March 12, 1997. http://www.unix.org/version2/pr.html. Retrieved 2009-07-26. 
  2. ^ "The Open Group announces completion of the joint revision to POSIX and the Single UNIX Specification" (Press release). The Open Group. January 30, 2002. http://www.unix.org/version3/pr.html. Retrieved 2009-07-26. 
  3. ^ "IEEE Std 1003.1, 2004 Edition". http://www.unix.org/version3/ieee_std.html. Retrieved 2009-07-26. 
  4. ^ "Base Specifications, Issue 7". The Open Group. http://www.opengroup.org/bookstore/catalog/c082.htm. Retrieved 2009-07-26. 
  5. ^ "The Austin Common Standards Revision Group". The Open Group. http://www.opengroup.org/austin/. Retrieved 2009-07-26. 
  6. ^ Single UNIX Specification Version 4
  7. ^ "Mac OS X Leopard - Technology - UNIX". Leopard Technology Overview. Apple Inc.. Archived from the original on 2007-08-23. http://web.archive.org/web/20070823040630/http://www.apple.com/macosx/leopard/technology/unix.html. Retrieved 2007-06-11. "Leopard is now an Open Brand UNIX 03 Registered Product, conforming to the SUSv3 and POSIX 1003.1 specifications for the C API, Shell Utilities, and Threads." 
  8. ^ The Open Group. "Mac OS X Version 10.5 Leopard on Intel-based Macintosh computers certification". http://www.opengroup.org/openbrand/register/brand3555.htm. Retrieved 2007-06-12. 
  9. ^ The Open Group. "Mac OS X Version 10.6 Snow Leopard on Intel-based Macintosh computers certification". http://www.opengroup.org/openbrand/register/brand3581.htm. Retrieved 2009-11-22. 
  10. ^ Solaris 2.5.1
  11. ^ "Preview: IBM z/OS V1.9 advanced infrastructure solutions for your business needs" (PDF). IBM. February 6, 2007. pp. 4, 15. http://www-306.ibm.com/common/ssi/rep_ca/8/897/ENUS207-018/ENUS207018.PDF. Retrieved 2007-06-11. 
  12. ^ The Open Group. "Register of Certified Products". http://www.opengroup.org/openbrand/register/. Retrieved 2009-12-20. 
  13. ^ "The Open Brand Fee Schedule". The Open Group. http://www.opengroup.org/openbrand/Brandfees.htm. Retrieved 2007-05-11.  Lists fees required to use UNIX brand
  14. ^ http://www.freebsd.org/projects/c99/
  15. ^ http://developer.apple.com/documentation/Darwin/Reference/Manpages/man5/compat.5.html

External links