什么使操作系统成为POSIX系统?所有版本的Linux都是POSIX,对吧? OSX怎么样?
答案 0 :(得分:62)
是。 POSIX是一组标准,用于确定类Unix操作系统的可移植API。 Mac OSX是基于Unix的(并且已经过认证),并且符合POSIX标准。 POSIX保证某些系统调用可用。
基本上,Mac满足了POSIX兼容所需的API,这使它成为POSIX OS。
所有版本的Linux都不符合POSIX标准。 2.6之前的内核版本不符合要求,而今天的Linux并没有正式符合POSIX标准,因为他们没有尽力获得认证(这可能永远不会发生)。无论如何,Linux可以被视为几乎所有意图和目的的POSIX系统。
答案 1 :(得分:8)
是的,OS X基于Darwin BSD,自10.5(Leopard - 2007年5月18日)起,所有Intel / AMD版本都经过官方认证,符合Unix 03 / POSIX标准,例如。
答案 2 :(得分:2)
POSIX是一个规范:http://www.unix.org/what_is_unix/single_unix_specification.html AFAIK,Linux遵守规范,但还没有认证
答案 3 :(得分:0)
不,不是。 MacOS缺少POSIX的许多功能,例如clock_nanosleep()
。它可能与POSIX的子集兼容,或者与POSIX的真正旧版本兼容,但是绝对不与POSIX.1-2017兼容。参见http://pubs.opengroup.org/onlinepubs/9699919799/functions/clock_nanosleep.html。
答案 4 :(得分:0)
SUS
- 单一 UNIX 规范。使用UNIX
标志是一套标准。
POSIX
- 便携式操作系统界面。它是 SUS
的子集。它定义了操作系统和应用程序之间的 API,以及其他工具和实用程序。包括Process、IO、Threads、security、Shell等部分
UNIX 03
是符合 SUS
version 3
Latest Apple Inc UNIX products
MAC 操作系统(自 10.5 Leopard 起)是 UNIX 03
兼容的操作系统,已通过 The Open Group 认证。
Linux
是其他操作系统内核的通用名称。
Linux 未通过 POSIX 认证(除了其中一些,如 Huawei EulerOS - UNIX 03)。但是 Linux 主要是符合 POSIX 标准的,因为他们试图坚持这些标准,甚至更多