Single UNIX Specification
Encyclopedia
The Single UNIX Specification (SUS) is the collective name of a family of standards for computer
Computer
A computer is a programmable machine designed to sequentially and automatically carry out a sequence of arithmetic or logical operations. The particular sequence of operations can be changed readily, allowing the computer to solve more than one kind of problem...

 operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

s to qualify for the name "Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

". The SUS is developed and maintained by the Austin Group
Austin Group
The Austin Group or the Austin Common Standards Revision Group is a joint technical working group formed to develop and maintain a common revision of POSIX.1 and parts of the Single UNIX Specification....

, based on earlier work by the IEEE and The Open Group
The Open Group
The Open Group is a vendor and technology-neutral industry consortium, currently with over three hundred member organizations. It was formed in 1996 when X/Open merged with the Open Software Foundation...

.

History

1980s: Motivation

The SUS emerged from a mid-1980s project to standardize operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

 interface
Interface (computer science)
In the field of computer science, an interface is a tool and concept that refers to a point of interaction between components, and is applicable at the level of both hardware and software...

s 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
International Organization for Standardization
The International Organization for Standardization , widely known as ISO, is an international standard-setting body composed of representatives from various national standards organizations. Founded on February 23, 1947, the organization promulgates worldwide proprietary, industrial and commercial...

/IEC
International Electrotechnical Commission
The International Electrotechnical Commission is a non-profit, non-governmental international standards organization that prepares and publishes International Standards for all electrical, electronic and related technologies – collectively known as "electrotechnology"...

 9945
), or POSIX
POSIX
POSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...

, 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
Unix wars
The Unix wars were the struggles between vendors of the Unix computer operating system in the late 1980s and early 1990s to set the standard for Unix thenceforth.- Origins :...

. 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 http://www.opengroup.org/onlinepubs/7990989775/.

This specification consisted of:
  • the Base Definitions, Issue 5,
  • the System Interfaces and Headers, Issue 5,
  • the Commands and Utilities, Issue 5,
  • the Networking Services, Issue 5,
  • the X/Open Curses, Issue 4, Version 2,

and was at the core of the UNIX 98 brand http://www.opengroup.org/openbrand/register/xxm0.htm.

2001: POSIX:2001, Single UNIX Specification version 3

Beginning in 1998, a joint working group
Working group
A working group is an interdisciplinary collaboration of researchers working on new research activities that would be difficult to develop under traditional funding mechanisms . The lifespan of the WG can last anywhere between a few months and several years...

 known as the Austin Group
Austin Group
The Austin Group or the Austin Common Standards Revision Group is a joint technical working group formed to develop and maintain a common revision of POSIX.1 and parts of the Single UNIX Specification....

 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.

This standard consisted of:
  • the Base Definitions, Issue 6,
  • the System Interfaces and Headers, Issue 6,
  • the Commands and Utilities, Issue 6.

and is at the core of the UNIX 03 brand http://www.opengroup.org/openbrand/register/xym0.htm.

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) http://www.opengroup.org/onlinepubs/009695399/.

2008: POSIX:2008

In December 2008, the Austin Group
Austin Group
The Austin Group or the Austin Common Standards Revision Group is a joint technical working group formed to develop and maintain a common revision of POSIX.1 and parts of the Single UNIX Specification....

 published a new major revision, known as POSIX:2008 (formally: IEEE Std 1003.1-2008) http://www.opengroup.org/onlinepubs/9699919799/. This is the core of the Single UNIX Specification, Version 4

This standard consists of:
  • the Base Definitions, Issue 7,
  • the System Interfaces and Headers, Issue 7,
  • the Commands and Utilities, Issue 7.

Specification

SUSv3 totals some 3700 pages, which are thematically divided into four main parts:
  • Base Definitions (XBD) - a list of definitions and conventions used in the specifications and a list of C
    C (programming language)
    C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

     header files which must be provided by compliant systems. 84 header files in total are provided.
  • Shell and Utilities (XCU) - a list of utilities and a description of the shell, sh
    Bourne shell
    The Bourne shell, or sh, was the default Unix shell of Unix Version 7 and most Unix-like systems continue to have /bin/sh - which will be the Bourne shell, or a symbolic link or hard link to a compatible shell - even when more modern shells are used by most users.Developed by Stephen Bourne at AT&T...

    . 160 utilities in total are specified.
  • System Interfaces (XSH) - contains the specification of various functions which are implemented as system call
    System call
    In computing, a system call is how a program requests a service from an operating system's kernel. This may include hardware related services , creating and executing new processes, and communicating with integral kernel services...

    s or library functions. 1123 system interfaces in total are specified.
  • Rationale (XRAT) - the explanation behind the standard.


The standard user command line and scripting interface is the POSIX
POSIX
POSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...

 shell, an extension of the Bourne Shell
Bourne shell
The Bourne shell, or sh, was the default Unix shell of Unix Version 7 and most Unix-like systems continue to have /bin/sh - which will be the Bourne shell, or a symbolic link or hard link to a compatible shell - even when more modern shells are used by most users.Developed by Stephen Bourne at AT&T...

 based on an early version of the Korn Shell
Korn shell
The Korn shell is a Unix shell which was developed by David Korn in the early 1980s and announced at USENIX on July 14, 1983. Other early contributors were AT&T Bell Labs developers Mike Veach, who wrote the emacs code, and Pat Sullivan, who wrote the vi code...

. Other user-level programs, services and utilities include awk
AWK (programming language)
The AWK utility is a data extraction and reporting tool that uses a data-driven scripting language consisting of a set of actions to be taken against textual data for the purpose of producing formatted reports...

, echo, ed, vi
Vi
vi is a screen-oriented text editor originally created for the Unix operating system. The portable subset of the behavior of vi and programs based on it, and the ex editor language supported within these programs, is described by the Single Unix Specification and POSIX.The original code for vi...

, and hundreds of others. Required program-level services include basic I/O
Input/output
In computing, input/output, or I/O, refers to the communication between an information processing system , and the outside world, possibly a human, or another information processing system. Inputs are the signals or data received by the system, and outputs are the signals or data sent from it...

 (file
Computer file
A computer file is a block of arbitrary information, or resource for storing information, which is available to a computer program and is usually based on some kind of durable storage. A file is durable in the sense that it remains available for programs to use after the current program has finished...

, terminal
Computer terminal
A computer terminal is an electronic or electromechanical hardware device that is used for entering data into, and displaying data from, a computer or a computing system...

, and network
Computer network
A computer network, often simply referred to as a network, is a collection of hardware components and computers interconnected by communication channels that allow sharing of resources and information....

) services. A test suite accompanies the standard. It is called PCTS or the POSIX Certification Test Suite.

Additionally, SUS includes CURSES
Curses (programming library)
curses is a terminal control library for Unix-like systems, enabling the construction of text user interface applications.The name is a pun on the term “cursor optimization”. It is a library of functions that manage an application's display on character-cell terminals .- Overview :The curses API...

 (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
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 derived in any way from AT&T Unix to meet the specification. For instance, IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...

 OS/390
OS/390
OS/390 is an IBM operating system for the System/390 IBM mainframe computers.OS/390 was introduced in late 1995 in an effort, led by the late Randy Stelman, to simplify the packaging and ordering for the key, entitled elements needed to complete a fully functional MVS operating system package...

, now z/OS
Z/OS
z/OS is a 64-bit operating system for mainframe computers, produced by IBM. It derives from and is the successor to OS/390, which in turn followed a string of MVS versions.Starting with earliest:*OS/VS2 Release 2 through Release 3.8...

, qualifies as a "Unix" despite having no code in common.

Marks for compliant systems

There are two official marks for conforming systems
  • UNIX 98 - the mark for systems conforming to version 2 of the SUS (partial compliance)
  • UNIX 03 - the mark for systems conforming to version 3 of the SUS (full compliance)


Older UNIX standards (superseded)
  • UNIX 93 (completely superseded)
  • UNIX 95 (compliance still acceptable for some simpler software subsystems)

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
HP-UX
HP-UX is Hewlett-Packard's proprietary implementation of the Unix operating system, based on UNIX System V and first released in 1984...

 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
Mac OS X v10.5
Mac OS X Leopard is the sixth major release of Mac OS X, Apple's desktop and server operating system for Macintosh computers. Leopard was released on 26 October 2007 as the successor of Tiger , and is available in two variants: a desktop version suitable for personal computers, and a...

 "Leopard" and Mac OS X Server
Mac OS X Server
Mac OS X Server is a Unix server operating system from Apple Inc. The server edition of Mac OS X is architecturally identical to its desktop counterpart, except that it includes work group management and administration software tools...

 v10.5 "Leopard", released on October 26, 2007, are Open Brand UNIX 03 registered products when run on Intel processors, as are Mac OS X v10.6
Mac OS X v10.6
Mac OS X Snow Leopard is the seventh major release of Mac OS X, Apple's desktop and server operating system for Macintosh computers.Snow Leopard was publicly unveiled on June 8, 2009 at the Apple Worldwide Developers Conference...

 "Snow Leopard" and Mac OS X Server v10.6 "Snow Leopard".

Reliant UNIX

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

SCO

UnixWare
UnixWare
UnixWare is a Unix operating system maintained by The SCO Group . UnixWare is typically deployed as a server rather than desktop. Binary distributions of UnixWare are available for x86 architecture computers. It was originally released by Univel, a jointly owned venture of AT&T's Unix System...

 7.1.3 is registered as UNIX 95 compliant.
SCO OpenServer
SCO OpenServer
SCO OpenServer, previously SCO UNIX and SCO Open Desktop , is, misleadingly, a closed source version of the Unix computer operating system developed by Santa Cruz Operation and now maintained by the SCO Group....

 5 is registered as UNIX 93 compliant.

Solaris

Solaris
Solaris Operating System
Solaris is a Unix operating system originally developed by Sun Microsystems. It superseded their earlier SunOS in 1993. Oracle Solaris, as it is now known, has been owned by Oracle Corporation since Oracle's acquisition of Sun in January 2010....

 10 is registered as UNIX 03 compliant on 32-bit
32-bit
The range of integer values that can be stored in 32 bits is 0 through 4,294,967,295. Hence, a processor with 32-bit memory addresses can directly access 4 GB of byte-addressable memory....

 and 64-bit
64-bit
64-bit is a word size that defines certain classes of computer architecture, buses, memory and CPUs, and by extension the software that runs on them. 64-bit CPUs have existed in supercomputers since the 1970s and in RISC-based workstations and servers since the early 1990s...

 x86 (X86-64
X86-64
x86-64 is an extension of the x86 instruction set. It supports vastly larger virtual and physical address spaces than are possible on x86, thereby allowing programmers to conveniently work with much larger data sets. x86-64 also provides 64-bit general purpose registers and numerous other...

) and SPARC
SPARC
SPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....

 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
Prep
Prep may refer to:* A nickname for anything associated with a University-preparatory school, such as:** A member of the Preppy social group, stemming from the word "preparatory"** Another name for someone who attends a preparatory school in the US...

 PowerPC
PowerPC
PowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...

 platform in 1996, but the product was withdrawn before more than a few dozen copies had been sold.

z/OS

IBM z/OS
Z/OS
z/OS is a 64-bit operating system for mainframe computers, produced by IBM. It derives from and is the successor to OS/390, which in turn followed a string of MVS versions.Starting with earliest:*OS/VS2 Release 2 through Release 3.8...

 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.

Other

Other operating systems registered as UNIX 95 or UNIX 93 compliant:
  • NCR
    NCR Corporation
    NCR Corporation is an American technology company specializing in kiosk products for the retail, financial, travel, healthcare, food service, entertainment, gaming and public sector industries. Its main products are self-service kiosks, point-of-sale terminals, automated teller machines, check...

     UNIX SVR4
  • NEC
    NEC
    , a Japanese multinational IT company, has its headquarters in Minato, Tokyo, Japan. NEC, part of the Sumitomo Group, provides information technology and network solutions to business enterprises, communications services providers and government....

     UX/4800
  • SGI
    Silicon Graphics
    Silicon Graphics, Inc. was a manufacturer of high-performance computing solutions, including computer hardware and software, founded in 1981 by Jim Clark...

     IRIX
    IRIX
    IRIX is a computer operating system developed by Silicon Graphics, Inc. to run natively on their 32- and 64-bit MIPS architecture workstations and servers. It was based on UNIX System V with BSD extensions. IRIX was the first operating system to include the XFS file system.The last major version...

     6.5

Non-registered Unix-like systems

Vendors of Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 systems such as Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 and FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...

 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.

BSD descendants

  • FreeBSD has a "C99 and POSIX Conformance Project" which aims for full compliance with a large subset of the SUS.

  • Darwin
    Darwin (operating system)
    Darwin is an open source POSIX-compliant computer operating system released by Apple Inc. in 2000. It is composed of code developed by Apple, as well as code derived from NeXTSTEP, BSD, and other free software projects....

     is an open source operating system: it is essentially the open source subset of Mac OS X. Darwin is compliant with the SUS 03.

Linux

No Linux distribution has been registered as SUS compliant.

The Linux Standard Base
Linux Standard Base
The Linux Standard Base is a joint project by several Linux distributions under the organizational structure of the Linux Foundation to standardize the software system structure, including the filesystem hierarchy, used with Linux operating system...

 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
De facto
De facto is a Latin expression that means "concerning fact." In law, it often means "in practice but not necessarily ordained by law" or "in practice or actuality, but not officially established." It is commonly used in contrast to de jure when referring to matters of law, governance, or...

 accepted and followed by many Linux distribution
Linux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...

s.

See also

  • Unix wars
    Unix wars
    The Unix wars were the struggles between vendors of the Unix computer operating system in the late 1980s and early 1990s to set the standard for Unix thenceforth.- Origins :...

  • Functional specification
    Functional specification
    A functional specification in systems engineering and software development is the documentation that describes the requested behavior of an engineering system...

  • UNIX manual
    Manual page (Unix)
    Man pages are the extensive documentation that comes preinstalled with almost all substantial Unix and Unix-like operating systems. The Unix command used to display them is man. Each page is a self-contained document.- Usage :...

  • Open system (computing)
    Open system (computing)
    Open systems are computer systems that provide some combination of interoperability, portability, and open software standards. The term was popularized in the early 1980s, mainly to describe systems based on Unix,...

  • Open standard
    Open standard
    An open standard is a standard that is publicly available and has various rights to use associated with it, and may also have various properties of how it was designed . There is no single definition and interpretations vary with usage....

  • POSIX
    POSIX
    POSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK