Information Technology-Portable Operating System Interface (POSIX) Base Specifications, Issue 7
|Publication Date:||1 January 2017|
POSIX.1-2017 defines a standard operating system interface and environment, including a command interpreter (or ``shell''), and common utility programs to support applications portability at the source code level. It is intended to be used by both application developers and system implementors.
POSIX.1-2017 comprises four major components (each in an associated volume):
General terms, concepts, and interfaces common to all volumes of POSIX.1-2017, including utility conventions and C-language header definitions, are included in the Base Definitions volume of POSIX.1-2017.
Definitions for system service functions and subroutines, language-specific system services for the C programming language, function issues, including portability, error handling, and error recovery, are included in the System Interfaces volume of POSIX.1-2017.
Definitions for a standard source code-level interface to command interpretation services (a ``shell'') and common utility programs for application programs are included in the Shell and Utilities volume of POSIX.1-2017.
Extended rationale that did not fit well into the rest of the document structure, containing historical information concerning the contents of POSIX.1-2017 and why features were included or discarded by the standard developers, is included in the Rationale (Informative) volume of POSIX.1-2017.
The following areas are outside of the scope of POSIX.1-2017:
Database management system interfaces
Record I/O considerations
Object or binary code portability
System configuration and resource availability
POSIX.1-2017 describes the external characteristics and facilities that are of importance to application developers, rather than the internal construction techniques employed to achieve these capabilities. Special emphasis is placed on those functions and facilities that are needed in a wide variety of commercial applications.
The facilities provided in POSIX.1-2017 are drawn from the following base documents:
IEEE Std 1003.1, 2004 Edition (POSIX-1) (incorporating IEEE Std 1003.1-2001, IEEE Std 1003.1-2001/Cor 1-2002, and IEEE Std 1003.1-2001/Cor 2-2004)
The Open Group Technical Standard, 2006, Extended API Set Part 1
The Open Group Technical Standard, 2006, Extended API Set Part 2
The Open Group Technical Standard, 2006, Extended API Set Part 3
The Open Group Technical Standard, 2006, Extended API Set Part 4
ISO/IEC 9899: 1999, Programming Languages - C, including ISO/IEC 9899: 1999/Cor.1: 2001(E), ISO/IEC 9899: 1999/Cor.2: 2004(E), and ISO/IEC 9899: 1999/Cor.3
Emphasis has been placed on standardizing existing practice for existing users, with changes and additions limited to correcting deficiencies in the following areas:
Issues raised by Austin Group defect reports, IEEE Interpretations against IEEE Std 1003.1, and ISO/IEC defect reports against ISO/IEC 9945
Issues raised in corrigenda for The Open Group Technical Standards and working group resolutions from The Open Group
Issues arising from ISO TR 24715: 2006, Conflicts between POSIX and the LSB
Changes to make the text self-consistent with the additional material merged
Features, marked Legacy or obsolescent in the base documents, have been considered for removal in this version
A review and reorganization of the options within the standard
Alignment with the ISO/IEC 9899: 1999 standard, including ISO/IEC 9899: 1999/Cor.2: 2004(E)