关闭广告

捷克专栏作家帕特里克·赞德尔(Patrick Zandl)本月出版了一本书,讨论了从个人电脑到手机的业务转型以及接下来的时代,这个时代持续了五年,期间苹果成为了全球最有价值的公司。您将详细阅读手机伟大革命背后的一切,以及它如何帮助创建一个全新的平板电脑市场。这是本书的第一个样本。

iPhone OS X 操作系统 - iOS 是如何创建的

该操作系统对于即将推出的苹果手机的成功也起到了决定性的作用。这种信念在2005年并不完全普遍,“智能手机”并不是最畅销的,相反,带有单一用途固件的手机卖得很热。但乔布斯需要他的手机具有相当大的未来扩展可能性、开发灵活性,从而能够应对新兴趋势。而且,如果可能的话,尽可能与Mac平台兼容,因为他担心公司会因为另一个操作系统的开发而不堪重负。正如我们所表明的,软件开发很长一段时间以来都不是苹果的强项之一。

该决定是在 2005 年 XNUMX 月与 Cingular Wireless 代表举行秘密会议后不久做出的,摩托罗拉没有被邀请参加这次会议。乔布斯说服 Cingular,苹果将分享他自己手机产生的收入,并说服 Cingular 认真建设蜂窝网络。即使当时乔布斯正在提倡从移动网络下载音乐的想法,但 Cingular 代表对互联网下载可能产生的负载增加感到悲观。他们争论下载铃声和网站的体验,并且正如未来将表明的那样,他们低估了乔布斯能够通过他的设备产生的炒作。这很快就会适得其反。

这就是项目的启动方式 紫色2,乔布斯希望借此超越与摩托罗拉不令人满意的合作。目标是:一款基于苹果公司现已获得或将很快开发的技术的自己的手机,乔布斯计划将其中的一些技术(例如 FingerWorks)用于构建他想要推出的平板电脑。但他必须做出选择:要么迅速推出一款结合iPod的手机,从而挽救即将到来的iPod销售危机,要么实现自己的梦想,推出一款平板电脑。他不可能两者兼得,因为与摩托罗拉的合作不会为他的手机提供iPod,这一点当时就已经很明显了,尽管摩托罗拉ROKR还需要半年的时间才能上市。市场。最后,也许令人惊讶,但非常理性的是,乔布斯押注于拯救音乐市场,推迟了平板电脑的推出,并将所有资源转移到 Purple 2 项目上,该项目的目标是构建一款带有 iPod 的触摸屏手机。

决定为手机适配该公司的 Mac OS X 操作系统,不仅是因为没有太多其他选择,而且还考虑到了后期设备融合的可能性。移动设备不断增长的计算能力和内存容量使乔布斯相信,未来可以在手机上提供与台式机上使用的应用程序类似的应用程序,并且依赖单一操作系统核心将是有利的。

为了加快开发速度,还决定成立两个独立的团队。硬件团队的任务是快速构建手机本身,另一个团队将专注于OS X操作系统的适配。

 Mac OS X、OS X 和 iOS

苹果公司对操作系统版本的标记有些混乱。 iPhone 操作系统的原始版本实际上并没有名称 - Apple 在其营销材料中使用了简洁的名称“iPhone 运行 OS X 的一个版本”。后来它开始使用“iPhone OS”来指代手机的操作系统。随着2010年第四个版本的发布,苹果开始系统地使用iOS这个名字。 2012年XNUMX月,桌面操作系统“Mac OS X”将更名为“OS X”,这可能会令人困惑。例如,在本章的标题中,我尝试考虑到 iOS 的核心来自 OS X 的事实。

达尔文在背景中

这里我们需要再次绕道达尔文操作系统。当苹果公司在 1997 年收购了乔布斯的公司 NeXT 时,NeXTSTEP 操作系统及其与 Sun Microsystems 合作创建的名为 OpenSTEP 的变体成为了交易的一部分。 NeXTSTEP操作系统也成为了苹果新电脑操作系统的基础,毕竟这也是苹果收购乔布斯的NeXT的原因之一。 NeXTSTEP 的一个吸引人但当时可能未被充分认识的魅力是它的多平台特性,该系统既可以在 Intel x86 平台上运行,也可以在 Motorola 68K、PA-RISC 和 SPARC 上运行,即几乎在桌面平台使用的所有处理器上运行当时。并且可以为所有处理器平台创建包含程序二进制版本的分发文件,即所谓的胖二进制文件。

因此,NeXT 的遗产成为了开发名为 Rhapsody 的新操作系统的基础,Apple 在 1997 年的开发者大会上首次展示了该操作系统。与以前版本的 Mac OS 相比,该系统带来了许多变化,从我们的角度来看,主要有以下几种:

  • 内核和相关子系统基于 Mach 和 BSD
  • 与之前的 Mac OS (Blue Box) 兼容的子系统 - 后来被称为经典界面
  • OpenStep API(黄盒)的扩展实现 - 后来演变成 Cocoa。
  • Java虚拟机
  • 基于 Displa PostScript 的窗口系统
  • 基于 Mac OS 但与 OpenSTEP 结合的界面

Apple 计划将 Mac OS 的大部分软件结构(框架)转移到 Rhapsody,例如 QuickTime、QuickDraw 3D、QuickDraw GX 或 ColorSync,以及原始 Apple 电脑的文件系统 Apple Filing Protocol (AFP)、HFS、UFS 等。但很快我们就发现这根本不是一件容易的事。 1 年 1997 月发布了第一个开发人员版本 (DR2),随后于 1998 年 1 月发布了第二个 DR1999,但仍有很多工作要做。仅仅一年后,也就是 1 年 XNUMX 月,第一个开发者预览版(Developer Preview XNUMX)就出现了,该系统已经被称为 Mac OS X,一个月前,苹果公司从中分离出了服务器版本 Mac OS X Server XNUMX,并正式将其命名为 Mac OS X。发布的也是 Darwin 的开源版本,从而满足了发布系统源代码的(备受争议和争论的)部分,该系统使用了需要此功能的其他开源部件,并且苹果公司在其系统中包含了该源代码在 Mach 和 BSD 内核上。

Darwin 实际上是没有图形界面的 Mac OS X,也没有许多专有库,例如 FairPlay 音乐文件安全性。您可以下载它,因为以后只有源文件可用,而不是二进制版本,您可以将它们编译并作为操作系统在各种处理器平台上运行。展望未来,达尔文将在苹果公司担任两个角色:他将不断提醒人们,将 Mac OS X 移植到另一个处理器平台不会那么困难以至于不可能。这将是对苹果软件封闭、专有的反对意见的一个答案,这是苹果后来造成的印象,尤其是在欧洲。在美国,它在教育领域更为广泛,而且许多学校服务器上都普遍使用 Darwin,苹果软件中的开放性和标准组件的使用意识要高得多。今天,Darwin 仍然是每个 Mac OS X 系统的核心,并且拥有相当广泛的开源开发贡献者群体,这些开发也反馈到了 Mac OS X 的核心。

Mac OS X 10.0 的第一个版本被称为 Cheetah,于 2001 年 XNUMX 月发布,即 Rhapsody 开始开发四年后,人们认为 Rhapsody 很容易在 Apple 平台上使用。具有讽刺意味的是,这给该公司带来了许多问题,因为在这四年里,它迫使用户使用一个令人不满意且没有前途的 Mac OS 平台。

因此,Darwin 成为了紫色计划 2 下操作系统的基础。当时还不确定苹果是否会决定使用它拥有设计股份的 ARM 处理器,还是刚刚开始在台式机中使用的英特尔,这是一个非常谨慎的选择,因为它使得改变处理器平台成为可能,而不会带来太大的痛苦,就像苹果对 PowerPC 和英特尔所做的那样。此外,它是一个紧凑且经过验证的系统,需要添加一个接口 (API) - 在本例中为 Cocoa Touch,这是一个带有移动电话库的触摸优化 OpenSTEP API。

最后,创建了一个设计,将系统分为四个抽象层:

  • 系统内核层
  • 内核服务层
  • 媒体层
  • Cocoa Touch触摸界面层

为什么它很重要并且值得注意?乔布斯认为手机必须完美地响应用户的要求。如果用户按下按钮,手机必须做出响应。它必须明显地承认它已经接受了用户的输入,这最好通过执行所需的功能来完成。一位开发人员在一部采用 Symbian 系统的诺基亚手机上向乔布斯演示了这种方法,该手机对按下拨号盘的反应太晚了。用户在列表中滑动了一个名字,不小心叫到了另一个名字。这让乔布斯感到沮丧,他不想在他的手机上看到类似的东西。操作系统必须优先处理用户的选择,Cocoa Touch触摸界面在系统中具有最高的优先级。只有在他之后,系统的其他层才有优先权。如果用户做出选择或输入,就必须发生一些事情来让用户放心,一切都在顺利进行。这种方法的另一个论据是桌面 Mac OS X 中的“跳跃图标”。如果用户从系统扩展坞启动一个程序,通常一段时间内不会发生任何明显的变化,直到该程序从磁盘完全加载到计算机的 RAM 中。用户会不断单击该图标,因为他们不知道该程序已被加载到内存中。然后,开发人员通过使图标弹跳直到整个程序加载到内存中来解决这个问题。在移动版本中,系统需要立即响应任何用户输入。

这种方法随后在移动系统中变得如此根深蒂固,甚至 Cocoa Touch 中的各个功能也会在系统中以不同的优先级进行处理,以便用户获得流畅的电话操作的最佳外观。

此时,苹果并没有认真考虑在手机上运行第三方应用程序。这时候甚至是不可取的。当然,即将推出的操作系统完全支持抢占式多任务、内存保护和现代操作系统的其他高级功能,这与当时其他操作系统在内存保护(Symbian)、多任务(Palm OS)或其他操作系统上的挣扎形成鲜明对比。两者都有(Windows CE)。但乔布斯认为即将推出的手机主要是一种用于消费苹果提供的音乐的设备。第三方应用程序只会延迟,乔布斯意识到必须围绕它们解决许多细节,例如分发系统,因此尽管移动 OS X 原生支持在后台运行其他应用程序的能力,但苹果人为地限制了这种可能性。当iPhone问世时,只有没有这种保护的“越狱”手机才能安装新兴的第三方应用程序。 2007 年 XNUMX 月 iPhone 推出很久之后,乔布斯就认为开发人员将创建纯网络应用程序,而只有苹果公司才能创建本机应用程序。

然而,即使在 2006 年夏天,OS X 移动版本的开发也处于完全不理想的状态。尽管系统的基本移植是在破纪录的时间内完成的,团队只有两名工程师,但手机界面各个元素的互连性和协调性却令人绝望。通话中断、软件频繁崩溃、电池寿命过短。虽然 2005 年 200 月有 XNUMX 人参与该项目,但两个平行团队的人数很快增加到 XNUMX 人,但这仍然不够。一个严重的缺点是苹果公司工作的保密性:新员工不能通过公开招聘的方式找到,而是通过推荐(通常是通过中间人)来找到。例如,软件团队的测试部分很大程度上是虚拟的,原型设计和测试是由主要通过电子邮件相互交流的人员进行的,很长一段时间甚至不知道他们在为苹果工作。直到达到这样的保密程度。

 

您可以在以下位置找到有关这本书的更多信息 帕特里克·赞德尔的网站。这本书可以在书店购买印刷版 尼奥卢索 a 科斯马斯,电子版正在准备中。

.