Browse Definitions :
Definition

POSIX (Portable Operating System Interface)

What is POSIX (Portable Operating System Interface)?

POSIX (Portable Operating System Interface) is a set of standard operating system interfaces based on the Unix operating system. The most recent POSIX specifications -- IEEE Std 1003.1-2017 -- defines a standard interface and environment that can be used by an operating system (OS) to provide access to POSIX-compliant applications. The standard also defines a command interpreter (shell) and common utility programs. POSIX supports application portability at the source code level so applications can be built to run on any POSIX-compliant OS.

A brief history of the POSIX standard

The POSIX interfaces were originally developed under the auspices of IEEE. However, the POSIX standard is now being developed and maintained by the Austin Common Standards Revision Group, commonly referred to as the Austin Group.

The Austin Group is a joint working group made up of members from IEEE, The Open Group and Joint Technical Committee 1 of the International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC). IEEE owns the POSIX trademark. The Open Group, which owns the Unix trademark, is a global consortium that develops technology standards.

POSIX emerged out of a need to make applications more portable across diverse systems. In the early days of computing, programmers had to rewrite their applications for each computer model and OS. This started to change when IBM introduced its line of System/360 computers, which could all run the same OS, OS/360. With these new systems, applications could be made more portable, saving enormous amounts of development time.

Soon after, Unix entered the scene and introduced an even greater potential for application portability. Unlike other OSes, Unix could run on machines from different vendors. However, multiple variations of the OS soon appeared, and the promise of portability quickly faded. Even so, Unix continued to grow in popularity, and it soon became apparent that some type of standard was needed to meet the challenges of application compatibility. That need led to the development of the POSIX specifications. Released in 1988, the first standard was based on AT&T Unix System V and Berkeley Software Distribution Unix, the two most prominent Unix systems at the time.

Unix commands
Basic Unix OS commands

What is the POSIX standard?

Over the years, the POSIX specifications have continued to be revised and reorganized. At one time, each standard was informally named POSIX, followed by a decimal and then the standard's number. For example, POSIX.1 was the standard for an application programming interface in the C language, and POSIX.2 was the standard shell and utility interface for the OS. These standards were officially named IEEE Std 1003.1 and IEEE Std 1003.2, respectively.

There were also amendments to the base standard, such as IEEE Std 1003.1b-1993, which dealt with real-time extensions. However, all the various specifications have been rolled into one standard -- IEEE Std 1003.1 -- which was last updated in 2017 and published in 2018. Officially, it is called IEEE Std 1003.1-2017. However, it is also referred to as POSIX.1-2017 or, more informally, POSIX.1.

The POSIX standard goes by other names as well. The Open Group calls it The Open Group Base Specifications Issue 7, 2018 edition, and ISO/IEC refer to it as ISO/IEC 9945:2009. ISO/IEC adopted the standard in 2009 and added Technical Corrigendum 1 in late 2012 and Technical Corrigendum 2 in March 2017, putting it on par with IEEE Std 1003.1-2017.

The POSIX.1-2017 specifications define the fundamental services needed to build POSIX-compliant applications. They establish standard semantics and syntax to help developers write portable applications. POSIX.1 is made up of the following four volumes:

  1. Base definitions. Provides common definitions for the specifications, including information about terms, concepts, syntax, service functions and command-line
  2. System interfaces. Provides details about interface-related terms and concepts, and defines the functional interfaces available to applications accessing POSIX-conformant systems.
  3. Shell and utilities. Describes the commands and utilities available to applications accessing POSIX-conformant systems, including the command language used in those systems.
  4. Rationale. Includes historical information about the standard's contents and why certain features were added or removed.

POSIX.1 takes a "write once, adopt everywhere" approach to the specifications by providing a set of fundamental services needed to efficiently build applications. The standard emphasizes the facilities and characteristics that are important to application development, rather than focusing on the techniques needed to achieve these capabilities. The POSIX standard is intended to be used by both system implementors and application developers.

Linux, which evolved from Unix, can be tricky to learn. Explore the main Linux components to better understand the OS.

This was last updated in June 2022

Continue Reading About POSIX (Portable Operating System Interface)

Networking
  • network traffic

    Network traffic is the amount of data that moves across a network during any given time.

  • dynamic and static

    In general, dynamic means 'energetic, capable of action and/or change, or forceful,' while static means 'stationary or fixed.'

  • MAC address (media access control address)

    A MAC address (media access control address) is a 12-digit hexadecimal number assigned to each device connected to the network.

Security
  • Evil Corp

    Evil Corp is an international cybercrime network that uses malicious software to steal money from victims' bank accounts and to ...

  • Trojan horse

    In computing, a Trojan horse is a program downloaded and installed on a computer that appears harmless, but is, in fact, ...

  • quantum key distribution (QKD)

    Quantum key distribution (QKD) is a secure communication method for exchanging encryption keys only known between shared parties.

CIO
  • green IT (green information technology)

    Green IT (green information technology) is the practice of creating and using environmentally sustainable computing.

  • benchmark

    A benchmark is a standard or point of reference people can use to measure something else.

  • spatial computing

    Spatial computing broadly characterizes the processes and tools used to capture, process and interact with 3D data.

HRSoftware
  • learning experience platform (LXP)

    A learning experience platform (LXP) is an AI-driven peer learning experience platform delivered using software as a service (...

  • talent acquisition

    Talent acquisition is the strategic process employers use to analyze their long-term talent needs in the context of business ...

  • employee retention

    Employee retention is the organizational goal of keeping productive and talented workers and reducing turnover by fostering a ...

Customer Experience
  • BOPIS (buy online, pick up in-store)

    BOPIS (buy online, pick up in-store) is a business model that allows consumers to shop and place orders online and then pick up ...

  • real-time analytics

    Real-time analytics is the use of data and related resources for analysis as soon as it enters the system.

  • database marketing

    Database marketing is a systematic approach to the gathering, consolidation and processing of consumer data.

Close