macOS结构

✍ dations ◷ 2025-08-07 04:18:28 #macOS结构

OS X 是苹果公司 Mac OS 操作系统替代品的产物。 在多次失败的尝试之后,苹果于1994年启动了 Pink 项目(后来和 IBM 进行了合作),这就是 Taligent 和 Copland ,两年后这一项目取消。通过收购获得了 NeXT 和其 NeXTSTEP 操作系统之后,苹果公司开始着手开发他们最新的操作系统 (Mac OS X) OS X 首次出现是1999年的 OS X Server 1.0,第一个正式的 OS X 桌面版本发布于2001年3月24日。从10.5版本开始,OS X 通过了 Open group Unix O3 单一 Unix 规范认证。

2016年6月,苹果公司宣布OS X更名为macOS,以便与苹果其他操作系统如iOS、watchOS和tvOS保持统一的命名风格。

Mac OS X 包含两个主要的部分:以FreeBSD源代码和Mach微核心为基础的 XNU 混合内核,并在 XNU 上构建的 Darwin 核心系统;及一个由苹果开发,称为 Aqua 的闭源、独占版权的图形用户界面。细分的看,Mac OS X 系统可以分成五层结构,每一层有其代表性的技术。

NeXTSTEP 使用基于卡内基梅隆大学开发的 Mach 2.5 微内核 BSD 4.3 子系统开发的混合内核。 NeXTSTEP 还推出了基于 DPS 的窗口系统,通过在显示器和打印机上使用同一种语言以达到更好的所见即所得效果。 NeXT 还包含他们从 StepStone 的收购的面向对象的 Objective-C 的语言和一系列旨在加快软件开发的框架(工具包)。

NeXTSTEP 最初设计运行在跑摩托罗拉68K处理器上,但后来被移植到英特尔的x86,惠普的PA-RISC和升阳电脑的SPARC处理器。后来,开发工具和框架以OpenStep形式发布,作为一个开发平台,它可以其他操作系统上运行。

1997年2月4日,苹果公司收购了NeXT,并着手开发 Rhapsody 操作系统。Rhapsody 基于 NeXTSTEP 构建,并将核心系统移植到了 PowerPC 架构上并添加了一个重新设计的用户接口。允许旧 Mac OS 的程序运行在独立的 JAVA 平台上的模拟层称为 Blue Box,而 Objective-C 开发工具和框架被称为 Yellow Box,Yellow Box 将为 Windows 独立提供。

Rhapsody 项目的最终结果,以 OS X Server 1.0 的形式于1999年发布。

在1998年的苹果全球开发者大会(WWDC)上,由于 Macintosh 平台软件开发者对 Rhapsody 上的Yellow Box 和 Blue Box存在诸多不满,苹果公司作出回应,称 Mac OS X 将提供一个不同于 Rhapsody 中现存的、全新的 API。

来自 Macintosh Toolbox 的关键 API 使得 OS X 可以直接运行在 BSD 层上而不需要 Macintosh 模拟层,这个接口被称为 Carbon,是 Mac OS X 中五大主要 API 之一,Carbon 去除了约2000个有问题的 API(系统中 API 总数约8000个)并将之替换为现代操作系统兼容的系统调用。

与此同时,苹果宣布将 Mach 部分内核版本号升级到3,BSD 部分的内核将被 FreeBSD, NetBSD 和 OpenBSD 项目所替代. 他们还发布了名为 I/O Kit的新驱动层,用于替代 NeXTSTEP 中的 Driver Kit,针对 Driver Kit 缺少电源管理和热交换特性、自动配置功能匮乏等问题作出了改进。

在1999年的 WWDC 上,苹果公司发布了 Quartz,一个基于 便携式文档格式 的窗口系统以避免产生(先前 NeXTSTEP 中 DPS 系统中遇到过的)和 Adobe 的版权纠纷和相关费用。

苹果还宣布,Yellow Box 被更名为 Cocoa 并撤回了 Yellow Box 将在 Windows 系统上提供的承诺。此次 WWDC 苹果还首次演示了将 Mac OS X 运行在 HFS+ 格式的驱动器上 。

第一个面向消费者的 Mac OS X 版本是2000年9月13日发布的公开预览版。

内核和设备服务层包括 XNU 内核、设备驱动和其他底层组件。XNU是由苹果电脑发展的操作系统内核,被使用于Mac OS X中。它是Darwin操作系统的一部分,跟随着Darwin一同作为自由及开放源代码软件被发布。其中,XNU 是X is Not Unix的缩写。XNU 包括 Mach 和 BSD (libSystem)两个部分,最初版本的 XNU 是 Mach 2.5版本和 BSD 4.3 的混合,随着 OS X 的发布,Mach 版本升级到3,BSD 部分被 FreeBSD 替代。

Mach 是一个由卡内基梅隆大学开发的计算机操作系统微内核,是最早实现微核心操作系统的例子之一,也是许多其它相似的项目的标准。同UNIX一样,Mach系统也包含了一组丰富的实用工具,并保留了 Unix 中驱动程序的概念用以硬件交互。在 OS X 中,Mach 内核为系统提供了64位内核和主要驱动支持。

伯克利软件套件(英语:Berkeley Software Distribution,缩写为 BSD),也被称为伯克利Unix(Berkeley Unix),是一个操作系统的名称,现在 BSD 也被用于称呼其衍生的各种套件。BSD 开创了现代计算机的潮流,由于BSD设计出众,代码编写清晰,包括它的文档,BSD 是最早添加库以支持 IP 协议栈和伯克利套接字的 Unix 系统,套接字系统的发明使得计算机系统的网络通信和本地读写一样方便,BSD 。时至今日,BSD仍在学术机构,乃至许多商业或自由产品的高科技实验中,继续被用作试验平台,甚至在嵌入式设备中。最初的 OS X 的内核 XNU 所使用的是 4.3BSD ,该版本发布于1986年6月。时至今日,OS X 中的许多命令行工具还是来源于 BSD。在 OS X 中,文件系统、网络栈、IPC、通知机制的支持也来自 BSD。

核心系统层的技术和框架是硬件/网络相关的底层服务,这些服务是和内核特性直接相关的。包括以下组件和框架(不完全列举):

核心服务层和用户界面的应用程序没有直接联系,但是它们建立在内核和核心系统层上,为APP提供诸如数据处理、字符串控制、封装网络库等核心支持。包括以下组件和框架(不完全列举):

媒体层负责音频、图像等多媒体文件的处理,2D 和 3D 图像的渲染,各种动画支持。

图形用户界面层包括设计和用户交互的 UI、响应用户操作、管理程序的行为。

相关

  • 文明开化文明开化,是指在明治时代,西洋的文明传入至日本,引致在制度及文化上出现巨大转变的现象。近代化=西欧化,是在明治时代的一贯课题。文明开化这个词汇一般是用来指,在明治初年,世相风
  • 科摩罗语科摩罗语是一种和斯瓦希里语关系密切的语言,属于班图语的一种。科摩罗人主要是非洲裔和阿拉伯裔,其中86%居住在三座主要的岛屿上。虽然伊斯兰教是科摩罗的国教,科摩罗大体上接
  • 红狼(C. rufus)红狼(学名:Canis lupus rufus)是一种生存在北美洲的灰狼亚种,分布于美国东南部,过去一度被当作是独立物种,近来有研究指出祖先是灰狼和郊狼的杂交种。1970年代以来就因毛皮、和农
  • 何炳松何炳松(1890年10月18日-1946年7月25日),字柏丞,浙江金华人,中国历史学家。清朝光绪十六年(1890年),何炳松出生于金华文昌巷的一知识分子家庭。其祖先住在今金华市婺城区罗店镇后溪河
  • 安商洪安商洪(韩语:안상홍,1918年1月13日-1985年2月25日)是韩国的基督教牧师,也是上帝的教会耶稣见证人会的创始人。1948年,他接受基督复临安息日会牧师的浸礼后,开始大声疾呼恢复新约真理
  • 波斯化的社会波斯化的社会是一个以波斯语言、文化、文学、艺术以及/或者以身份为基础,或受到其强烈影响的社会。“Persianate”一字是马歇尔·霍奇森(英语:Marshall Hodgson)所采用的新字。
  • 戈特弗里德·贝恩戈特弗里德·贝恩(Gottfried Benn,1886年5月2日-1956年7月7日)是德国诗人,作品具有强烈的表现主义色彩。1914年,贝恩即开始创作表现主义作品。1930年代,贝恩对魏玛共和国表示强烈的
  • 鸳鸯针《鸳鸯针》全称《拾珥楼新镌绣像小说鸳鸯针》,原刻本误“拾珥楼”为“抬珥楼”。题“华阳散人编辑、蚓天居士批阅”,卷首有序,后署“独醒道人漫识于蚓天斋”。残存第一卷。另有
  • 刘子兴刘子兴(?-?),字宾之,广东潮州府海阳县人,民籍,明朝政治人物。广东乡试第二十一名举人。嘉靖二十年(1541年)中式辛丑科会试第八名,登第三甲第七十六名进士。官至广西布政使。曾祖刘润;祖父刘伦;父刘宗保,母李氏。
  • 高信源高信源 (韩语:고신원,英语:Koh Shin Won,1995年12月11日-),韩国男歌手,为Cube娱乐旗下的男子组合PENTAGON,担任副唱、门面。2014年,曾于EXO BWCW 限定纪念商店Cafe工作,其后进入Cube。2016年,5月2日,出道节目《PENTAGON MAKER》播出。2016年,10月10日,以PENTAGON成员出道,担任副唱、门面。韩国音乐著作权协会