web-dev-qa-db-fra.com

OSX est-il un OS POSIX?

Qu'est-ce qui fait d'un système d'exploitation un système POSIX? Toutes les versions de Linux sont POSIX, non? Et OSX?

57
node ninja

Oui. POSIX est un groupe de normes qui détermine une API portable pour les systèmes d'exploitation de type Unix. Mac OSX est basé sur Unix (et a été certifié comme tel), et conformément à cela, il est conforme à POSIX. POSIX garantit que certains appels système seront disponibles.

Essentiellement, Mac satisfait à l'API requise pour être compatible POSIX, ce qui en fait un système d'exploitation POSIX.

Toutes les versions de Linux ne sont pas conformes à POSIX. Les versions du noyau antérieures à 2.6 n'étaient pas conformes, et aujourd'hui Linux n'est pas officiellement compatible POSIX car ils n'ont pas fait tout leur possible pour obtenir la certification (ce qui n'arrivera probablement jamais). Quoi qu'il en soit, Linux peut être traité comme un système POSIX à presque toutes les fins.

64
Rafe Kettler

Oui, OS X est basé sur Darwin BSD , et depuis 10.5 (Leopard - 18 mai 2007), toutes les versions Intel/AMD ont été officiellement certifiées conformes au standard Unix 03/POSIX, par exemple.

8
arober11

POSIX est une spécification: http://www.unix.org/what_is_unix/single_unix_specification.html AFAIK, Linux adhère à la spécification, mais n'est pas encore certifié

2
anta40

Non, ça ne l'est pas. MacOS manque un tas de fonctionnalités de POSIX, comme clock_nanosleep(). Il peut être conforme à un sous-ensemble de POSIX ou à une version vraiment très ancienne de POSIX, mais il n'est certainement pas conforme à POSIX.1-2017. Voir http://pubs.opengroup.org/onlinepubs/9699919799/functions/clock_nanosleep.html .

0
Eric Toombs