What is the POSIX standard?

POSIX is a series of norms, standards, and conventions created by the Unix user community . They are used to improve compatibility between different Unix operating systems and to provide a foundation for making applications more portable between different operating systems.

Each architecture has its own rules or standards ; so not all people use the same.
In the case of POSIX, there are many different “types” of this standard, but none are necessarily better than the others, they are just different.

Index of contents

  • What is the POSIX standard?
  • POSIX operating systems
  • POSIX specifications
  • What are the advantages of using POSIX?
  • What are the disadvantages?
  • What are the main features of POSIX?
  • What is the history?

What is the POSIX standard?

The POSIX standard is a set of rules for Unix-like operating systems. The word “standard” can be misinterpreted here; it does not mean “the best,” but just a set of rules and conventions. Basically, POSIX describes the behavior of a computer system, the conventions that operating systems must follow, and the interfaces that software must use.

The idea is to ensure software portability between different operating systems by describing a common standard for software behavior and operating system interfaces. The purpose of POSIX is to ensure compatibility and portability of software between different Unix operating systems. A program written consistently with the conventions described in the standard should work as expected on any Unix system that supports the standard.

The standard describes the interface that programs must use to access system services. It also describes the behavior that these services should display. POSIX covers all aspects of operating systems, including programming language conventions, error handling, file formats, and system administration. Specifies a set of standards to which Unix-like operating systems must conform.

POSIX operating systems

Operating systems that adhere to the POSIX standard:

  • GNU/Linux: It is partially compatible with POSIX. The most widely used Unix-like operating system in the world, based on the kernel The Linux kernel was created by Linus Torvalds. After starting to create the kernel, Linus decided to release it under the GNU General Public License, which is a free and open source software license for software and other creative works.
  • HP-UX– Unix server operating system used by Hewlett-Packard incorporating features of both BSD and System V and first released in 1989.
  • FreeBSD– Unix-like operating system based on the BSD kernel created by the Computer Systems Research Group at the University of California, Berkeley, and first published in 1993.
  • Mac OS X or macOS– A commercial Unix-like operating system created by Apple Inc. that is based on open source technology, including the Darwin kernel, first released in 2001.
  • Solaris– Unix-like operating system created by Sun Microsystems that is based on OpenSolaris and first released in 2002.
  • NetBSD– Unix-like computer operating system that is open source software, created by the NetBSD Foundation and first published in 1993.
  • OpenBSD– Open source Unix-like computer operating system, created by the OpenBSD Foundation and first published in 1995.
  • GNU Hurd: The kernel of the GNU operating system. It was created by the Free Software Foundation and is available as open source software.
  • AIX– Unix-like operating system created by IBM, based on the latest version of the System V architecture and first released in 1987.
  • OpenSolaris– Unix-like operating system created by Sun Microsystems that is based on the OpenSolaris kernel and was first released in 2005.
  • IllumOS– Unix-like operating system created by the IllumOS project and first published in 2016.

POSIX specifications

There are several sub-standards that are part of the POSIX standard. There are also many different “flavors” of it, so they are not all created equal.

  • IEEE 1003.1 – This is the base specification of the original POSIX standard from 1988. It is the most basic POSIX specification.
  • IEEE 1003.1-2001 – This is the second edition of the IEEE 1003.1 specification, published in 2001. This specification is sometimes known as “POSIX 2001” or “C99.”
  • IEEE 1003.1-2008 – This is the third edition of the IEEE 1003.1 specification, published in 2008. This specification is sometimes known as “POSIX 2008” or “C2008.”
  • IEEE 1003.1-2017 – This is the fourth edition of the IEEE 1003.1 specification, published in 2017. This specification is sometimes known as “POSIX 2017” or “C17.”
  • IEEE 1003.2 – This is the IEEE specification that was intended to define a Portable Operating System Interface (POSIX) for systems based on the SPARC Architecture. It is a superset of the IEEE 1003.1-2001 specification. For this reason, it is sometimes referred to as “SPARC-2003”.

What are the advantages of using POSIX?

There are many advantages to using POSIX, including the following:

  • Compatibility– Programs written for POSIX systems will normally run on other POSIX systems without modification, so they can be used on different systems without any problem.
  • Standardization– Standards exist for many aspects of POSIX systems, allowing for consistency and reducing differences between different systems.
  • Portability– POSIX systems can be more easily ported to different platforms than non-POSIX systems, allowing cross-platform development.

What are the disadvantages?

The only disadvantage of using POSIX is that it is complicated and difficult to implement and understand. As you can see, the advantages of POSIX far outweigh the disadvantages. Now that you know what POSIX is and how it works, you can decide if it’s right for you.

What are the main features of POSIX?

Among the main features of POSIX we can highlight:

  • Consistency– Standards exist for many aspects of POSIX systems, allowing for consistency and reducing differences between different systems.
  • Portability– POSIX systems can be more easily ported to different platforms than non-POSIX systems, allowing cross-platform development. –
  • Compatibility– Programs written for these systems will normally run on other systems without modification, so they can be used on different systems without any problem.
  • Standardization– Standards exist for many aspects of POSIX systems, allowing for consistency and reducing differences between different systems.

What is the history?

The first edition was published in 1988 . The second edition was published in 2001 and the third in 2008. The fourth edition was published in 2017.

The idea of ​​having a standard for Unix systems was first proposed in the late 1970s. At that time, Unix was a relatively new and unknown operating system, but many people knew that it was extremely efficient and powerful. To make it more useful in companies, it was proposed to establish a standard for Unix systems in order to increase their portability. At that time, there were many different types of Unix systems, so having a standard would help users and programmers of those systems to be more compatible. When the IEEE published its first edition of the standard in 1988, Unix had been on the market for many years and was well established. This facilitated the standardization of Unix systems and the compatibility between them.

Now you know a little more about the POSIX standard and certifications, which are so important nowadays for software, especially if they are used in certain administrations. Do not forget to leave your comments!