Skip to content

How Linux, BSD, UNIX, and macOS Relate to Each Other

jdrch edited this page Nov 28, 2020 · 9 revisions

POSIX

There is a family of computing standards trademarked as POSIX. The POSIX trademark is owned by IEEE.

An OS that uses the POSIX trademark must:

  1. Be certified to meet all POSIX conformance requirements
  2. Have a POSIX Trademark License Agreement

Certified POSIX-compliant OSes

UNIX

UNIX's requirements are a superset of POSIX's. In other words, all UNIX OSes are POSIX-compliant OSes, but not all POSIX-compliant OSes are UNIX OSes. The UNIX trademark is owned by The Open Group.

A UNIX is any operating system:

  1. That passes the applicable UNIX certification test suites
  2. Whose supplier has formally agreed to the terms of the UNIX Certification Program

macOS

MacOS is a mixed source UNIX OS.

Non-certified, but "mostly POSIX-compliant" OSes

Current Generation (Free/DragonFly /Net/Open)BSDs

  1. Each use an independently developed kernel
  2. Have no aim for binary compatibility among themselves
  3. Use the BSD License

Linux Distributions (Distros)

  1. Each use the centrally developed Linux kernel
  2. May modify the kernel for their own purposes, but there is, by virtue of the common kernel:
    1. Binary (not necessarily package) compatibility among Linux distros on the same CPU architecture
    2. The features of each kernel are a superset of the features of the mainline Linux kernel of the same release version
  3. Each use the GNU General Public License (GPL) for the kernel at the very least

Notes

  • The differences between the BSD License and the GPL, while outside the scope of this comparison, are significant
  • Licensing and certification fees for both POSIX and UNIX are expensive relative to open source OS budgets. This appears to be the main reason BSD and Linux are neither certified nor licensed
  • Why Linux and BSD users should stop claiming BSD
  • POSIX certification appears to involve an audited self-test, using a standardized testing suite supplied by the IEEE
  • UNIX certification appears to involve approved results self-testing, using standardized testing suites supplied by The Open Group
  • The Linux Foundation references multiple standards, including the Linux Standard Base and the Filesystem Hierarchy Standard. However, it does not list certified or compliant OSes. It appears the common Linux standard is the kernel itself
  • The Open Group maintains a list of currently marketed OSes that have been certified to comply with the UNIX specification
  • The Open Group & IEEE maintain a list of products that have been certified to comply with POSIX specification.
Clone this wiki locally