BootX (Apple)
{{Short description|Boot loader developed by Apple Inc.}}
{{For|the similarly-named bootloader which is one of the bootloaders that enable Old World PowerPC Macintoshes to boot native (i.e. non-MkLinux) Linux|BootX (Linux)}}
{{Use mdy dates|date=October 2013}}
{{Infobox Software
| name = BootX
| screenshot = Mac OS X startup screen.png
| caption = The BootX booting screen used on Macintoshes with Mac OS X 10.2 or later{{cite web|date=September 5, 2002 |last=Siracusa |first=John |title=Mac OS X 10.2 Jaguar |publisher=Ars Technica |url=https://arstechnica.com/apple/2002/09/macosx-10-2/ |page=3 |access-date=January 26, 2016}}{{cite news |first=John |last=Markoff |author-link=John Markoff |title=Compressed Data; Happy Mac Becomes an Icon of the Past |url=https://query.nytimes.com/gst/fullpage.html?res=9C03EFDE103CF935A1575BC0A9649C8B63&sec=&spon=&pagewanted=print |work=The New York Times |location=New York |date=August 26, 2002 |access-date=May 17, 2008}}
| developer = Apple Inc.
| released = March 24, 2001 (with Mac OS X 10.0)
| latest release version =
| latest release date =
| latest preview version =
| latest preview date =
| programming language =
| operating system = Darwin & Mac OS X{{GitHub|https://github.com/apple-oss-distributions/BootX/tree/BootX-81}}
| platform = PowerPC{{cite web|title=System Startup Programming Topics: The Boot Process |publisher=Apple Inc. |date=February 8, 2007 |url=https://developer.apple.com/documentation/MacOSX/Conceptual/BPSystemStartup/Articles/BootProcess.html |access-date=May 1, 2008 |url-status=dead |archive-url=https://web.archive.org/web/20080706145146/http://developer.apple.com/documentation/MacOSX/Conceptual/BPSystemStartup/Articles/BootProcess.html |archive-date=July 6, 2008 }}
| language =
| genre = Boot loader
| license = Apple Public Source License{{cite web|title = Apple Public Source License|publisher = Apple Inc.|date = August 6, 2003|url = https://opensource.apple.com/apsl|access-date = July 23, 2017}}
| website =
}}
BootX is a software-based bootloader designed and developed by Apple Inc. for use on the company's Macintosh (now Mac) computer range. BootX is used to prepare the computer for use, by loading all required device drivers and then starting-up Mac OS X by booting the kernel on all PowerPC Macs running Mac OS X.{{cite book|last=Singh|first=Amit|title=Mac OS X Internals: A Systems Approach|orig-year=2006|url=https://books.google.com/books?id=K8vUkpOXhN4C|access-date=May 3, 2008|publisher=Addison-Wesley|isbn=978-0-321-27854-8|pages=324–325|chapter=The Firmware and the Bootloader|year=2007}}
The Intel-based Macs introduced in 2006 have a Unified Extensible Firmware Interface (UEFI) ROM, and use a UEFI-based bootloader named boot.efi
rather than BootX.
The program is freely available as part of the Darwin operating system under the open-source Apple Public Source License.
History
Older Macintoshes dating from 1983 until 1998 utilize a basic bootloader. Those Macintoshes include a ROM chip varying in sizes up to 4 megabytes (MB),{{cite web | date = August 23, 2000 | title = Macintosh: ROM Size for Various Models | publisher = Apple Inc. | url = http://docs.info.apple.com/article.html?artnum=11609 | access-date = May 15, 2008 | archive-url = https://web.archive.org/web/20020621112135/http://docs.info.apple.com/article.html?artnum=11609 | archive-date = June 21, 2002 | url-status = dead }} which contains both the computer code to boot the computer and the Macintosh Toolbox operating system code.
In 1998, with the advent of the first iMac, the firmware was updated.{{cite web|date=October 5, 1999 |title=Apple Announces Mac OS 9: The Best Internet OS Ever |publisher=Apple Inc. |url=https://www.apple.com/ca/press/1999/10/os9.html |access-date=May 17, 2008 |url-status=dead |archive-url=https://web.archive.org/web/20081217080504/https://www.apple.com/ca/press/1999/10/os9.html |archive-date=December 17, 2008 }} The ROM was reduced in size to 1 MB and was called BootROM, and the remainder of the ROM was moved to the file Mac OS ROM
in the Mac OS System Folder, stored on the hard drive.{{cite book|last=Singh|first=Amit|title=Mac OS X Internals: A Systems Approach|orig-year=2006|url=https://books.google.com/books?id=K8vUkpOXhN4C|access-date=May 3, 2008|publisher=Addison-Wesley|isbn=978-0-321-27854-8|pages=267–268|chapter=The Firmware and the Bootloader|year=2007}} This ROM used a full implementation of the Open Firmware standard (contained in BootROM) and was named New World ROM;{{cite web|date=March 26, 1999 |title=The Macintosh ROM and The NewWorld Architecture |publisher=Apple Inc. |url=https://developer.apple.com/documentation/Hardware/DeviceManagers/pci_srvcs/pci_cards_drivers/PCI_BOOK.26.html#pgfId=3296 |access-date=May 15, 2008 |url-status=dead |archive-url=https://web.archive.org/web/20040924082343/http://developer.apple.com/documentation/Hardware/DeviceManagers/pci_srvcs/pci_cards_drivers/PCI_BOOK.26.html |archive-date=September 24, 2004 }} while the boot-ROM part of the previous ROM was retroactively named Old World ROM.
In 2001, with the release of Mac OS X 10.0, the Mac OS ROM
file was replaced with the BootX
bootloader file. In 2002, with the release of Mac OS X 10.2, the historical "Happy Mac" start-up picture used since the first version of Classic Mac OS was replaced with a grey Apple logo.
In 2006, with the introduction of Macs using Intel-based hardware, BootROM was replaced by the Unified Extensible Firmware Interface (UEFI) ROM (although Apple still calls it BootROM) and BootX is replaced by the boot.efi
file.{{cite press release|title = Apple Unveils New iMac with Intel Core Duo Processor|publisher = Apple Inc.|url = https://www.apple.com/newsroom/2006/01/10Apple-Unveils-New-iMac-with-Intel-Core-Duo-Processor/|date = January 10, 2006|access-date = October 20, 2019}}
Features
To make the boot loader appealing to other operating system developers, Apple added features to allow flexibility in the booting process such as network boot using TFTP and load Mach-O and ELF formatted kernels. BootX can also boot from HFS, HFS+, UFS and ext2 formatted volumes.{{cite web| last = Gerbarg| first = Louis| title = BootX: The Mac OS X Bootloader| publisher = Rensselaer Polytechnic Institute - Computer Science Department| url = http://www.cs.rpi.edu/~gerbal/BootX.pdf |pages = 7–8 |access-date = May 1, 2008|archive-url = https://web.archive.org/web/20070309142504/http://www.cs.rpi.edu/~gerbal/BootX.pdf |archive-date = March 9, 2007|url-status=dead}} The boot loader can be manipulated at startup by holding down various key combinations to alter the booting process. Such functions include Verbose Mode, achieved by holding down the Command and V key at startup, which replaces the default Apple logo with text-based information on the boot process and Single User Mode, achieved by holding down the Command and S, which, depending on the operating system, may boot into a more basic command-line or text-based version of the operating system, to facilitate maintenance and recovery action.{{cite web| title = Mac OS X keyboard shortcuts| publisher = Apple Inc.| date = October 17, 2007| url = http://docs.info.apple.com/article.html?artnum=75459| access-date = May 2, 2008| archive-url = https://web.archive.org/web/20080423201850/http://docs.info.apple.com/article.html?artnum=75459| archive-date = April 23, 2008| url-status = dead}} The ROM can also be set to require a password to access these technical functions using the OpenFirmware interface.{{cite web| title = Setting up firmware password protection in Mac OS X | publisher = Apple Inc.|url = http://support.apple.com/kb/HT1352| access-date = May 3, 2008}}
Boot process
{{Expand section|with=information on how Mac OS X is booted on Old World Macs|talk=Old World ROM|small=no|date=April 2025}}
In PowerPC-based Macintoshes, the boot process starts with the activation of BootROM, the basic Macintosh ROM, which performs a Power On Self Test to test hardware essential to startup. On the passing of this test, the startup chime is played and control of the computer is passed to OpenFirmware. OpenFirmware initializes the Random Access Memory, Memory Management Unit and hardware necessary for the ROM's operation. The OpenFirmware then checks settings, stored in NVRAM, and builds a list of all devices on a device tree by gathering their stored FCode information.
On the completion of this task, BootX takes over the startup process configuring the keyboard and display, claiming and reserving memory for various purposes and checking to see if various key combinations are being pressed.{{cite web| last = Tanous | first = Jim| title = Booting Mac OS X| publisher = tekrevue.com| url = https://www.tekrevue.com/tip/mac-startup-options/|access-date = September 29, 2014}} After this process has been completed BootX displays the grey Apple logo, spins the spinning wait cursor, and proceeds to load the kernel and some kernel extensions and start the kernel.{{cite web| last = Tanous| first = Jim| title = Mac OS X System Startup| publisher = tekrevue.com| url = https://www.tekrevue.com/tip/mac-startup-options/|access-date = September 29, 2014}}
References
{{Reflist}}
External links
- [http://www.osxbook.com Mac OS X] at osxbook.com
{{macOS}}
{{good article}}