Portable Operating System Interface

from Wikipedia, the free encyclopedia
POSIX
ISO / IEC / IEEE 9945
Basic data

developer Portable Application Standards Committee
Current  version IEEE Std 1003.1-2008
operating system Operating system independent
category Programming interface
German speaking No
PASC Committee

The Portable Operating System Interface ( POSIX [ ˈpɒzɪks ]) is a standardized programming interface developed jointly by the IEEE and the Open Group for Unix , which represents the interface between application software and the operating system. The international standard is called ISO / IEC / IEEE 9945.

An alternative designation is (The Open Group Technical Standard) Base Specifications . POSIX forms the basis of the Single UNIX Specification .

development

The current standard is a further development from a project from 1985. The term POSIX was proposed by Richard Stallman and meets the request of the IEEE for a memorable name; it replaced the designation IEEE-IX. Most Unix derivatives largely adhere to the standards set out in IEEE1003.1 (1990) and IEEE1003.2 (1992). These older versions were replaced in 2001 by the revised version IEEE Std 1003.1-2001 of the IEEE and Open Group . In 2004 a slightly corrected version IEEE Std 1003.1, 2004 Edition was published. A revision took place in 2008, this was given a new edition in 2013 and 2016. Another revision took place in 2017.

specification

The specification of the user and software interface of the operating system is divided into four parts, which together form the IEEE Std 1003.1-2008 standard:

Basic definitions
A list of the conventions, definitions and concepts used in the standard.
System interface
The C system calls and associated header files.
Command line interpreter and utilities
A list of the utilities and the command line interpreter .
Explanations
Explanations about the standard.

Other auxiliary programs such as awk , vi or echo are also part of the POSIX standard. Among other things, the C functions provide input and output (for files , terminals and network services ) and provide control over processes as well as user and group management.

POSIX compatible operating systems

Operating systems can be fully or partially POSIX-compatible - this depends on whether you implement the POSIX standards entirely or only partially. The (mostly minimal) deviations from the standard nowadays are primarily a conscious decision in favor of other compatibility and less a lack of practicability.

Fully POSIX compliant

The following operating systems are fully compatible with the entire standard and are therefore POSIX-compliant:

Largely POSIX compatible

These operating systems are for the most part compatible but not entirely compliant with the standards:

POSIX compatibility extensions

These operating systems are usually not POSIX-compatible, but compatibility extensions can be used. POSIX support is usually implemented using translation libraries or an intermediate layer “above” the kernel . Full POSIX conformity is usually not given.

See also

Individual evidence

  1. https://publications.opengroup.org/standards/unix/t101
  2. POSIX.1 FAQ (English) - Frequently Asked Questions about POSIX® 1003.1 (Version 1.12) at The Open Group ; dated February 2, 2006
  3. IEEE Std 1003.1, 2004 Edition (English) - IEEE Standard 1003.1-2004
  4. IEEE Std 1003.1-2008
  5. IEEE Std 1003.1-2008, 2013 Edition
  6. IEEE Std 1003.1-2008, 2016 edition
  7. IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008) / The Open Group Base Specifications Issue 7, 2018 edition
  8. On the POSIX conformity of BSD / OS ( Memento from July 14, 2011 in the Internet Archive ) (in the Internet archive )
  9. To the POSIX conformity of FreeBSD
  10. Explanation from Microsoft on SFU. Retrieved January 2, 2011 .
  11. Pthreads-w32: Open Source POSIX Threads for Win32
  12. ^ APE - The ANSI / POSIX Environment. plan9.bell-labs.com, accessed July 21, 2009 .

literature

Web links