是Mac OS X UNIX吗?


87

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

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

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


6
真的有关系吗?

1
在超级用户
mouviciel 2010年

1
APUE2e中,我似乎想起了类似“如果它像鸭子一样行走,而像鸭子一样嘎嘎叫的声音,则可能是鸭子”之类的东西,它指的是非认证UNIX的Linux,但无论我认为这也适用于此。
xenoterracide

Answers:


110

但所有的Mac OS X(现在的MacOS)的一个版本已经被认证为Unix的通过公开组,从10.5:

在任何给定时间,The Open Group网站上的Apple页面仅列出macOS的当前版本,有时甚至列出以前的版本,但是上面的所有链接都是通过该页面找到的。

苹果公司的Unix技术简介中明确指出了OS X作为经过认证的Unix的地位,其中还包含其他出色的技术知识,可以帮助您将其与其他UNIX®和类似Unix的系统进行比较。

由于此答案的受欢迎程度,我在Open Group网站上监视Apple的页面,而我从未见过Lion在那出现。在上面的链接中使用清晰的URL方案来回搜索也不会显示任何隐藏的Lion认证页面。向Open Group标准与认证副总裁Andrew Josey询问是否缺少认证,他似乎已经确认10.7 Lion未注册为UNIX 03产品


12

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


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

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

10

是的,OS X是UNIX。

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

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

因此,这实际上取决于您是否将“ UNIX”定义为“ The Open Group的商标名称,应用于已获得The Open Group作为UNIX系统认证的操作系统”,还是将“ unix”定义为“操作系统”。它的功能类似于原始的AT&T Unix操作系统,并且满足任何版本的Single Unix规范中设定的标准,即使从未将其提交给The Open Group进行测试和认证,”可能会合格。(与大多数Linux发行版一样,即使没有发行过Open Group认证。)

哦,我还不能添加评论,但是作为Warren Young帖子的更新-Apple确实获得了10.7的UNIX认证(或者至少他们声称拥有:)https://ssl.apple.com/media/我们/osx/2012/docs/OSX_for_UNIX_Users_TB_July2011.pdf


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

@WarrenYoung,另请参阅网络档案。10.8一致性对所austingroup毫升上2012-07-27宣布,并且直到那时只有10.5和10.6分别列在认证寄存器(再变至10.6和10.8)
斯特凡Chazelas

2

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


1

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


7
关于X11应用程序看起来不太好:根据我的经验,它们看起来非常类似于其他任何* ix。他们不做的是采用类似Aqua的主题,Apple可以通过自定义Gnome和KDE来为某些应用程序做到这一点,但我想他们认为这是值得的。
沃伦·杨

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

2
默认情况下,OS X将a设置为另一端DISPLAY的FIFO launchd。任何尝试使用显示的画面都会launchd自动启动X11.app。至少可以追溯到10.6。
bahamat 2012年

5
类似于Linux的用户区:OS X的用户区更接近FreeBSD。示例:OS X使用find需要目录的BSD (默认情况下.不像GNU find那样)。BSD命令缺乏--long-options; 与BSD相比,GNU命令具有更多选项。OS X缺乏/proc; OS X的主要GUI与Linux几乎完全不同(X11仅仅是OS X上的附属工具)。OS X的动态链接系统与Linux完全不同。dtrussVS strace; 等等等等自制可以解决一些这一点,但默认物质,和并行命令集可以是一个问题。
沃伦·杨

1
X11不是Unix系统的一部分。
托尔比约恩Ravn的安德森

1

如果启用了和预处理器标志,则Mac OS X 10.6可以在UNIX®环境第二版中编译(已经提到)《高级编程》一书的源代码(请参见compat(5)手册页和此处)。所以我的回答是“是!”。_POSIX_C_SOURCE_DARWIN_C_SOURCE

本书的源代码(以某种方式)也可以在Windows上编译吗?

(有关Linux的用户领域:GNU findutils软件包和其他GNU工具的预编译Mac OS X二进制文件可在rudix.org上找到)。


3
这不能回答问题。
通配符

0

从法律上讲是的。UNIX是The Open Group拥有的商标,Apple已购买了使用权。关于HP,IBM和Oracle的情况与他们出售的UNIX有关。

但是,unix(未大写)也是1986年之前也拥有版权的规范。商用unix在80年代后期爆发,而免费的unix紧随其后是1991年的Linux,这并非偶然。

从技术上讲,Linux和FreeBSD不低于OS X(Darwin)可以用作unix,但尚未向Open Group支付UNIX认证的费用,因此不能使用该名称。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.