The Operating System Boot Process

When Open Firmware boots Mac OS X, it does so through BootX (located in /System/Library/CoreServices). It’s important to note that Open Firmware doesn’t know that it’s booting Mac OS X, nor does it have any concept of the filesystem that contains BootX. All it knows is that there is a program at a particular location on a drive that it can load and run. It is the job of BootX to boot the system from there.

The first thing BootX does is display the “boot” image on screen. This is the monochrome gray-on-gray screen with the Apple logo and spinner on it that you see after your computer chimes. It then loads the kernel from the disk and the essential kernel-level device drivers (such as those for accessing disk drives) necessary to get things running. Once loaded, the kernel’s initialization procedure is called.

The kernel loads device drivers for all the devices connected to the computer and then finds the boot drive. It may seem a bit odd that the kernel has to find the drive that it was loaded from, but remember that it was loaded from the drive and then started. The kernel determines the drive it was loaded from by consulting Open Firmware. Once the kernel finds the boot drive, it mounts the drive at the Unix filesystem root (/), starts its internal process server, which allows processes to communicate with each other, and then starts the launchd daemon, which takes over for the BSD /sbin/init program previously used by earlier versions of Mac ...

Get Running Mac OS X Tiger now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.