我正在搜索 Unix 与 OS X。我在 From 发现了显着的差异http://www.unix.com/unix-dummies-questions-answers/919-mac-osx-vs-unix.html
OS X 是 MACH 和 BSD 谱系的进化内核。
谁能帮助我理解这一点?
Unix 和 Mac OS X 之间的显着差异是什么?
答案1
关于解释的解释:
请参阅 FreeBSD 论坛。基本上,OS X 用户空间本质上是 FreeBSD(带有 NetBSD 的少量元素),但内核本身是 FreeBSD 的一个分支MACH内核这使得它本质上更加单一(就像网络堆栈和进程模型与 FreeBSD 一致)。对于技术描述,您可能会更幸运地在谷歌上搜索“Darwin”而不是“OS X”,因为后者有很多来自不参与该项目的人的噪音。
答案2
需要区分一下观点:
来自壳- 用户的观点在这里没有太大的差异。 OS X 是经过完全认证的 Unix 操作系统,因此它的命令行完全符合 Unix 标准和 POSIX。你有带有 shell 的终端,所有 shell 命令(BSD 风格),你可以安装例如 macports 用于 GNU 版本的命令。例如,捆绑包sed
没有 --long argumnets,当您安装 macports 时,您将获得 gsed - GNU 版本。您的通用目录结构为 /bin /sbin /usr/bin 等。
从 X-windows-user 的角度来看 - 你能使用 X-windows 应用程序,但它不是默认的 GUI。 OS X 有自己的 GUI(称为 Cocoa)。为了获得良好的概述,您应该阅读该开发人员文档。
从系统管理员的角度来看,这里有一些更大的差异。许多配置都是使用 Apple 自己的工具(主要是 GUI)完成的 - 但所有工具也都有命令行界面 - 但是与常见的 UNIX 有点不同。
最大的差异在于开发人员。 OS X 使用完全面向对象的消息传递 Objective-C。这马赫内核是面向消息传递的内核。使用 xcode(Apple 的开发工具)进行开发非常简单。
在过去 20 多年里,我使用了许多不同的 unix 风格(从 PDP11 上的 BSD 2.9 开始,通过 BSD 4.2/VAX、XENIX、SCO Unix、Consensys、Linux 和 FreeBSD),现在使用 OS X 已经近十年了。恕我直言,它是我使用过的最好的 UNIX - 所以答案是主观的......