BootX 是一款由苹果公司 为其麥金塔 电脑设计研发的基于软件 的啟動程式 。BootX通过先载入所有所需的驱动程序 ,再启动PowerPC架构 麦金塔(Mac OS X 10.2 及更高版本)内核 的方式启动Mac OS X 。[ 2] [ 6]
通过使用BootROM(一块包含OpenFirmware 的唯讀記憶體 芯片 ),相兼容的麦金塔电脑将在启动时 显示灰色的苹果图标 启动画面 。[ 7]
此程序以苹果公共源代码许可证 作为Darwin 操作系统 的一部分发布。[ 5]
苹果公司使用boot.efi
取代了BootX,同时还在因特尔架构的麦金塔 上安装了統一可延伸韌體介面 唯读内存 。[ 4]
历史
于1983年至1998年发布的旧麦金塔电脑使用的是最基本的啟動程式 ;其启动程序的代码 仅仅存储于一块最大为4MB 的ROM芯片 上。[ 8] 这颗芯片被人熟知为麦金塔工具箱 (又名旧世界固件 ),其与现如今需要大小足够的硬盘 来存储操作系统的设计截然不同。此设计直至1998年才退出市场。[ 9]
随着iMac 系列的发布,引导程序固件(BootROM)得到了更新。[ 10] 其固件大小减小到了 1 MB,剩余部分被移动至macOS硬盘 系统文件夹 中的Mac OS ROM
文件。[ 9] 此固件使用了OpenFirmware 标准的完整实现(包含在BootROM内),命名为新世界固件 。[ 11]
2001年,随着Mac OS X 10.0 的发布,Mac OS ROM
也被BootX
引导程序文件取代。[ 9] 2002年,随着Mac OS X 10.2 的发布,“开心麦金塔 ”也被灰色的苹果图标取而代之。[ 12] 2006年,苹果公司发布因特尔架构的麦金塔 ,同时使用几乎完全相同的統一可延伸韌體介面 ROM(虽然其依然名为BootROM)和boot.efi
文件代替BootX登上了历史舞台。[ 4] [ 13]
特性
为了使自家的引导程序吸引大批操作系统开发者,苹果在引导过程中添加了诸多功能以增添其灵活性,如TFTP 的网络引导 功能、Mach-O 和ELF 格式内核 的载入功能。BootX同时也可从HFS 、HFS+ 、UFS 和ext2 卷 引导。[ 14] 通过按下特定组合键,用户可操控启动流程(如同时按下⌘ Cmd +V 可开启详细引导及單用戶模式 ;按下⌘ Cmd +S 可开启文本或命令行界面 以进行恢复)。[ 15] 此固件也可通过OpenFirmware界面设置密码以保护部分功能。[ 16]
引导流程
以单用户模式启动的Mac OS X
在PowerPC架构的麦金塔电脑上首先需激活BootROM,执行加电自检 后开始引导流程 。[ 4] 若自检通过,电脑将播放启动音效,随后将控制权转交给OpenFirmware。OpenFirmware收到控制权后开始检查存储于NVRAM 中的设置,并根据FCode 信息构建设备树上的设备列表。[ 6]
上述流程完成后,BootX将接管启动进程,开始配置键盘和显示器、保留内存并检查用户是否按下特定组合键。[ 7] 随后,BootX将显示灰色苹果图标、旋转等待光标、载入并开启内核及部分扩展 。[ 17]
参考文献
^ Jaguar "Unleashed" at 10:20 p.m. Tonight . Apple Inc. August 23, 2002 [May 2, 2008] . (原始内容 存档于2003-10-08).
^ 2.0 2.1 Siracusa, John. Mac OS X 10.2 Jaguar . Ars Technica : 3. September 5, 2002 [January 26, 2016] . (原始内容存档 于2017-03-29).
^ Darwin 9.2 Source Code . Apple Inc. [May 17, 2008] . (原始内容 存档于2008-05-09).
^ 4.0 4.1 4.2 4.3 System Startup Programming Topics: The Boot Process . Apple Inc. February 8, 2007 [May 1, 2008] . (原始内容 存档于2008-07-06).
^ 5.0 5.1 Apple Public Source License . Apple Inc. August 6, 2003 [July 23, 2017] . (原始内容存档 于2019-04-22).
^ 6.0 6.1 Singh, Amit. The Firmware and the Bootloader. Mac OS X Internals: A Systems Approach . Addison-Wesley. 2007: 324–325 [2006] [May 3, 2008] . ISBN 0-321-27854-2 .
^ 7.0 7.1 Tanous, Jim. Booting Mac OS X . tekrevue.com. [September 29, 2014] . (原始内容存档 于2019-05-03).
^ Macintosh: ROM Size for Various Models . Apple Inc. August 23, 2000 [May 15, 2008] . (原始内容 存档于2002-06-21).
^ 9.0 9.1 9.2 Singh, Amit. The Firmware and the Bootloader. Mac OS X Internals: A Systems Approach . Addison-Wesley. 2007: 267–268 [2006] [May 3, 2008] . ISBN 0-321-27854-2 .
^ Apple Announces Mac OS 9: The Best Internet OS Ever . Apple Inc. October 5, 1999 [May 17, 2008] . (原始内容 存档于2008-12-17).
^ The Macintosh ROM and The NewWorld Architecture . Apple Inc. March 26, 1999 [May 15, 2008] . (原始内容 存档于2004-09-24).
^ Markoff, John . Compressed Data; Happy Mac Becomes an Icon of the Past . The New York Times (New York). August 26, 2002 [May 17, 2008] .
^ Apple Unveils New iMac with Intel Core Duo Processor . Apple Inc. January 10, 2006 [May 16, 2008] . (原始内容 存档于2011-03-29).
^ Gerbarg, Louis. BootX: The Mac OS X Bootloader (PDF) . Rensselaer Polytechnic Institute - Computer Science Department: 7–8. [May 1, 2008] . (原始内容 (PDF) 存档于2007-03-09).
^ Mac OS X keyboard shortcuts . Apple Inc. October 17, 2007 [May 2, 2008] . (原始内容 存档于2008-04-23).
^ Setting up firmware password protection in Mac OS X . Apple Inc. [May 3, 2008] . (原始内容存档 于2014-10-01).
^ Tanous, Jim. Mac OS X System Startup . tekrevue.com. [September 29, 2014] . (原始内容存档 于2019-05-03).
外部链接