Mac OS X不是Linux发行版,但是...

两个操作系统共享相同的根

Mac OS X,Apple桌面和笔记本电脑上使用的操作系统以及Linux均基于Unix操作系统,该操作系统由Dennis Ritchie和Ken Thompson于1969年在贝尔实验室开发。 Apple iPhone上使用的操作系统,现在称为iOS ,源自Mac OS X,因此也是Unix的一个变体。

像所有主要的Linux发行版(如Ubuntu,Red Hat和SuSE Linux)一样,Mac OS X具有“桌面环境”,它为应用程序和系统设置提供图形用户界面。 这个桌面环境建立在Unix类型的操作系统之上,就像Linux发行版的桌面环境建立在核心Linux操作系统之上一样。 但是,除了默认安装的Linux发行版之外,Linux发行版通常还提供其他桌面环境。 Max OS X和Microsoft Windows不允许用户切换桌面环境,而不是轻微的外观和感觉调整,例如配色方案和字体大小。

Linux和OS X的通用根源

Linux和Mac OS X的共同根源的实际方面是都遵循POSIX标准。 POSIX代表Unix类操作系统的便携式操作系统接口 。 这种兼容性使得可以在Mac OS X系统上编译在Linux上开发的应用程序。 Linux甚至提供了在Mac OS X的Linux上编译应用程序的选项。

像Linux发行版一样,Mac OS X包含一个终端应用程序,它提供了一个可以运行Linux / Unix命令的文本窗口。 这个终端通常也被称为命令行shellshell窗口 。 这是人们用来在图形用户界面变得可用之前操作计算机的基于文本的环境。 它仍广泛用于系统管理和脚本自动化流程。

流行的Bash shell可在Mac OS X中使用,包括Mountain Lion,因为它几乎都是Linux发行版。 Bash shell使您能够快速遍历文件系统并启动基于文本或图形的应用程序。

在shell /命令行中,可以使用所有基本的Linux / Unix和shell命令,例如lscdcat等。 文件系统的结构与Linux一样,尽管OS X中还有一些额外的文件夹,但其分区/目录(例如usrvar 等)devhome位于顶部。

Linux和Mac OS X等Unix类型操作系统的基本编程语言是C和C ++。 许多操作系统都是用这些语言来实现的,很多基本的应用程序也是用C和C ++来实现的。 C / C ++也实现了更高级别的编程语言,如Perl和Java

Apple提供Objective C编程语言,包括IDE(集成开发环境)Xcode,以支持OS X和iOS应用程序的开发。

与Linux一样,OS X包含强大的Java支持,实际上提供了一种定制的Java安装,以确保Java应用程序在OS X中的无缝集成。它还包括在Linux系统上流行的文本编辑器Emacs和VI的基于终端的版本。 支持更多GUI的版本可以从Apple的AppStore下载。

主要差异

Linux和Mac OS X之间的区别之一就是所谓的内核。 如名称所示,内核是Unix类型操作系统的核心,实现了进程和内存管理以及文件,设备和网络管理等功能。 当Linus Torvalds设计Linux内核时,出于性能方面的考虑,他选择了被称为单片内核的内核,而微内核则是为了更高的灵活性而设计的。 Mac OS X使用了一种在这两种架构之间进行妥协的内核设计。

虽然Max OS X通常被称为桌面/笔记本操作系统,但最新版本的OS X也可以用作服务器操作系统,尽管需要获取附加软件包Server App以访问所有服务器特定的应用程序。 然而,Linux仍然是占主导地位的服务器操作系统。