Is OSX a POSIX OS?

LinuxMacosOperating SystemPosix

Linux Problem Overview


What is it that makes an OS a POSIX system? All versions of Linux are POSIX, right? What about OSX?

Linux Solutions


Solution 1 - Linux

Yes. POSIX is a group of standards that determine a portable API for Unix-like operating systems. Mac OSX is Unix-based (and has been certified as such), and in accordance with this is POSIX compliant. POSIX guarantees that certain system calls will be available.

Essentially, Mac satisfies the API required to be POSIX compliant, which makes it a POSIX OS.

All versions of Linux are not POSIX-compliant. Kernel versions prior to 2.6 were not compliant, and today Linux isn't officially POSIX-compliant because they haven't gone out of their way to get certified (which will likely never happen). Regardless, Linux can be treated as a POSIX system for almost all intents and purposes.

Solution 2 - Linux

Yes, OS X is based on Darwin BSD, and since 10.5 (Leopard - 18-May-2007) all Intel/AMD versions have been officially certified as compliant with the Unix 03 / POSIX standard eg.

Solution 3 - Linux

No, it is not. MacOS is missing a whole bunch of features of POSIX, like clock_nanosleep(). It might be compliant with a subset of POSIX or with a really really old version of POSIX, but it's definitely not compliant with POSIX.1-2017. See http://pubs.opengroup.org/onlinepubs/9699919799/functions/clock_nanosleep.html.

Solution 4 - Linux

POSIX is a specification: http://www.unix.org/what_is_unix/single_unix_specification.html AFAIK, Linux adheres to the spec, but hasn't certified yet

Solution 5 - Linux

OSX POSIX

SUS - Single UNIX Specification. It is a set of standards to use UNIX mark.

POSIX - Portable Operating System Interface. It is a subset of SUS. It defines API between OS and application as long as others tools and utilities. It includes such parts as Process, IO, Threads, security, Shell

UNIX 03 is a Product Standard mark which conforms SUS version 3

Latest Apple Inc UNIX products

MAC OS(since 10.5 Leopard) is a UNIX 03 compliant OS which is certified by The Open Group.

Linux is a general name of a core for others operating system.

Linux is not POSIX-certified(except some of them like Huawei EulerOS - UNIX 03). But Linux is mostly POSIX-compliant because they try to stick to these standards and even more

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionnode ninjaView Question on Stackoverflow
Solution 1 - LinuxRafe KettlerView Answer on Stackoverflow
Solution 2 - Linuxarober11View Answer on Stackoverflow
Solution 3 - LinuxEric ToombsView Answer on Stackoverflow
Solution 4 - Linuxanta40View Answer on Stackoverflow
Solution 5 - LinuxyoAlex5View Answer on Stackoverflow