我最近有这样的说法,说Mac OS X不是UNIX,而是类Unix。

我知道有一个Unix单一规范,符合这些规范的可以使用UNIX商标。

Mac OS X是UNIX操作系统还是类似Unix的操作系统? ?

评论

真的重要吗?

在超级用户上已经回答了一个非常类似的问题:superuser.com/questions/49434/how-unix-is-mac-os-x

在APUE2e中,我似乎想起了类似“如果它像鸭子一样走动,而像鸭子一样嘎嘎叫的声音,则可能是鸭子”之类的东西,它指的是非认证UNIX的Linux,但无论我认为这也适用于此。 br />
OscarRyx和其他人:它有助于解释询问的原因,问题是关于命令和二进制文件的兼容性还是许可/法律含义。

#1 楼

The Open Group已从10.5开始,将所有版本的Mac OS X(现为macOS)认证为The Open Group的Unix:
10.13(高山脉)
10.12(山脉)
10.11(埃尔卡皮坦)
10.10(优胜美地)
10.9(小牛)
10.6(雪豹)
10.5(豹)

在任何给定时间,The Open Group网站上的Apple页面仅列出macOS的当前版本,有时还列出以前的版本,但是上面的所有链接都是在该页面上找到的。可以帮助您将其与其他UNIX®和类似Unix的系统进行比较。在上面的链接中使用清晰的URL方案来回搜索也不会显示任何隐藏的Lion认证页面。向Open Group标准与认证副总裁Andrew Josey询问是否缺少认证,他似乎已经确认10.7 Lion没有注册为UNIX 03产品。

#2 楼

是的,OS X是UNIX。

“ UNIX”实际上只是Open Group在完成认证后使用的商标名称。许多不同的操作系统(根本不兼容)被认证为UNIX。其中包括OSX。这是OS X 10.9“ Mavericks”的当前认证页,并获得了“ UNIX 03”认证:http://www.opengroup.org/openbrand/register/brand3602.htm

Apple已提交了OS X自10.5以来的每个版本的认证(并收到)。但是,如果10.5之前的版本(与许多类似“ UNIX的”操作系统,例如Linux的许多发行版一样)可能已经通过了认证,那么他们是否申请了它。

所以,这实际上取决于您是否将“ UNIX”定义为“ The Open Group的商标名称,适用于已获得The Open Group认证为UNIX系统的操作系统”,或者将“ unix”定义为“功能类似于原始AT&T Unix的操作系统操作系统,并且符合在任何版本的Single Unix Specification中确立的标准,即使从未将其提交给The Open Group进行测试和认证,也是如此。” (就像大多数Linux发行版一样,即使没有发行过Open Group认证也是如此。) 10.7的UNIX认证(或至少它们声称拥有:) https://ssl.apple.com/media/us/osx/2012/docs/OSX_for_UNIX_Users_TB_July2011.pdf

评论


我不会相信苹果的营销文件仅仅是因为独立的,可信赖的信息资源枯竭了。 (Open Group,Google,Wikipedia等),在10.7发行时,我多次在The Open Group网站上检查Apple的页面,但从未看到认证链接出现。 Google搜索site:opengroup.org“ 10.6”和...“ 10.8”找到了周围的证书,但是搜索10.7失败。通过手写URL在opengroup.org网站上浏览会增加bupkis。缺乏证据并不代表没有证据,但我的情况是很可靠的。

–沃伦·杨(Warren Young)
2014年11月22日12:11

@WarrenYoung,另请参阅网络档案。 2012年7月27日,奥斯汀集团(Austingroup ml)宣布了10.8符合性,在此之前,认证登记册上仅列出了10.5和10.6(然后更改为10.6和10.8)。

–StéphaneChazelas
18 Mar 10 '18 at 18:42

#3 楼

好吧,鉴于它完全符合POSIX,我会说是的。

评论


但是从法律上讲,只有经过The Open Group的认证,才能将其称为“ UNIX”。

– bahamat
2012年8月21日在19:26

仅使POSIX兼容而与Unix兼容是不够的(Unix规范是POSIX规范的超集)。在认证者看来,足以与Unix兼容就足以获得认证。

–StéphaneChazelas
13年3月26日在21:50

#4 楼

MacOS的核心使用Unix内核。图形层简单地(或者可能不是“简单地”)位于Unix基础之上。对于那些不了解终端的人来说,所有尖尖的东西都是一种构造。 :)

#5 楼

一个很大的不同是X11集成有点不同。 X11应用程序在Mac上看起来不太好,您必须手动启动一个没有受到太多爱戴的XServer。除此之外,我认为这是具有FreeBSD网络堆栈的Mach微内核,用户领域就像Linux。

评论


关于X11应用程序看起来不太好:根据我的经验,它们看起来很像其他* ix上的应用程序。他们不做的是呈现一个类似Aqua的主题,Apple可以通过自定义Gnome和KDE来为某些应用程序做到这一点,但我想他们认为这是值得的。

–沃伦·杨(Warren Young)
2010年9月2日,21:26

重新手动启动X:多年来,对X的需求似乎已经下降。我猜他们在检测何时需要X方面变得越来越聪明。

–沃伦·杨(Warren Young)
2010-09-02 21:27

默认情况下,OS X将DISPLAY设置为在另一端启动的FIFO。当任何东西尝试使用显示器时,launched将自动启动X11.app。至少可以追溯到10.6。

– bahamat
2012年8月21日在19:29

类似于Linux的用户区:OS X的用户区更接近FreeBSD。示例:OS X使用需要目录的BSD查找(不像GNU find那样默认为。)。 BSD命令缺少--long-options; GNU命令比BSD中具有更多选项。 OS X缺少/ proc; OS X的主要GUI与Linux几乎完全不同(X11仅仅是OS X上的附属工具)。 OS X的动态链接系统与Linux完全不同。 dtruss vs strace; Homebrew可以解决其中的一些问题,但是默认设置很重要,并且并行命令集可能会成为问题。

–沃伦·杨(Warren Young)
2014年5月16日13:03



X11不是Unix系统的一部分。

–索比昂·拉文·安德森(ThorbjørnRavn Andersen)
18年3月21日在16:48

#6 楼

如果启用了_POSIX_C_SOURCE_DARWIN_C_SOURCE预处理器标志,则Mac OS X 10.6可以在UNIX®环境第二版中编译(已经提到)《高级编程》一书的源代码(请参见compat(5)手册页和此处)。因此,我的回答是“是!”。可以在rudix.org上获得GNU findutils软件包的预编译Mac OS X二进制文件和其他GNU工具。

评论


这不能回答问题。

–通配符
16年7月12日在19:56

@Wildcard实际上,该书本身提到FreeBSD 5.2.1,Linux 2.4.22,Mac OS X 10.3和Solaris 9时说:“只有Solaris才能称自己为UNIX系统。” (当然,这在以后的OS X / macOS版本中已更改。)

– Dominick Pastore
19-10-31在16:03



#7 楼

从法律上讲是的。 UNIX是The Open Group拥有的商标,Apple已购买了使用权。关于HP,IBM和Oracle,他们出售的UNIX也是如此。商业Unix在80年代后期爆发,随后免费的Unix随后出现,例如1991年使用Linux。