iBoot

From Wikipedia, the free encyclopedia
iBoot
Developer(s)Apple Inc.
Operating systemDarwin, macOS,[1] iPadOS and iOS[2]
Platformx86, ARM
TypeBoot loader
LicenseProprietary software

iBoot is the stage 2 bootloader for all Apple products.[3] It replaces the old bootloader, BootX. Compared with its predecessor, iBoot improves authentication performed in the boot chain.[2]

For x86 macOS, the boot process starts by running code stored in secured UEFI Boot ROM (first stage). Boot ROM has two primary responsibilities: to initialize system hardware and to select an operating system to run (the POST and UEFI component). For ARM macOS, the Boot ROM is not UEFI component.[4]

For iOS, the boot process starts by running the device's Boot ROM code. In systems with S1 processors or A9 or earlier A-series processors, the Boot ROM loads the Low-Level Bootloader (LLB), which loads iBoot. In systems with newer processors, the Boot ROM loads iBoot itself. If all goes well, iBoot will then proceed to load the iOS kernel as well as the rest of the operating system.[5] If the LLB or iBoot fails to load iOS, or fails to verify iOS, the bootloader jumps to DFU (Device Firmware Update)[6] mode; otherwise it loads the remaining kernel modules.[2]

On x86 macOS, iBoot is located in /System/Library/CoreServices/boot.efi.[7] Once the kernel and all drivers necessary for booting are loaded, the boot loader starts the kernel’s initialization procedure. At this point, enough drivers are loaded for the kernel to find the root device.[8]

References[]

  1. ^ "Darwin 9.2 Source Code". Apple Inc. Retrieved January 19, 2020.
  2. ^ a b c Ryan, Peter Y. A.; Naccache, David; Quisquater, Jean-Jacques (2016-03-17). The New Codebreakers: Essays Dedicated to David Kahn on the Occasion of His 85th Birthday. Springer. ISBN 9783662493014.
  3. ^ Hayes, Darren R. (2014-12-17). A Practical Guide to Computer Forensics Investigations. Pearson IT Certification. ISBN 9780132756150.
  4. ^ https://khronokernel.github.io/images/posts/2021-02-07-BOOT/basic-boot.png
  5. ^ Apple Inc. (May 2016). "iOS Security Guide" (PDF). apple.com. Archived (PDF) from the original on February 27, 2016.
  6. ^ "iFixit Support: DFU Restore". iFixit. Retrieved 2019-09-29.
  7. ^ "rEFIt - The Intel Mac boot process". refit.sourceforge.net. Retrieved 2017-08-26.
  8. ^ "The Early Boot Process". developer.apple.com. Retrieved 2017-08-26.

External links[]

Retrieved from ""