The Seamless Move from PowerPC to Intel
Prior to the latest series of Intel Macs released this year, Apple had been using Open Firmware and their own proprietary disk partitioning system called APM. The new Intel Macs can read, but not boot, from existing APM drives. PowerPC Macs running Mac OS X 10.4.2 or later can read, but not boot, from GPT formatted disks.
Tiger is currently not Universal, so a Mac OS X boot disk has to be Intel or PowerPC specific. Therefore, the ability to boot both Mac architectures from the same type of disk isn't very important.
Since old and new Macs can at least read each other's disks, there is no real problem. The APM booting limitations on Intel Macs are artificially imposed by Apple to prevent exposing users to unnecessary complication.
This seamless interoperability among old and new Macs is a bit more refined than the jump from standard PCs to the new Intel Macs, as anyone experimenting with Boot Camp has discovered. Apple’s new Intel Macs are PCs, but they are a generation ahead of other vendor’s PCs.
BIOS PCs, Intel Macs, and EFI
All PC hardware descending from the 1981 IBM PC have continued to use the creaky, old, and simplistic BIOS for firmware-level device management. BIOS in turn is tied to MBR, the archaic partitioning system that is inflexible, insecure, and inherently limited by its obsolete design.
Apple’s Lead in EFI
Itanium and EFI didn't exactly work out at Intel had hoped. However, Apple's adoption of EFI in their new Intel Macs will likely force PC makers to get on the stick and find ways to catch up to Apple's lead.
It took nearly a decade for even the top tier PC makers such as Dell to start delivering USB machines with USB keyboards and mice! How long will it take Microsoft and the BIOS PC makers to get on board with EFI? Who knows, but Apple is using their sloth to its own advantage. EFI helps to differentiate Apple's hardware as a higher value, higher quality PC, without requiring a higher price.
How EFI's GPT Partitions Work
EFI is basically Intel's own re-implementation of Open Firmware, with extra features to provide backward support for MBR. MBR is the ancient system used by BIOS PCs to record where partitions are on a disk. An MBR looks like this:
For EFI, Intel designed a new partition table with room for far more than MBR's four primary, bootable partitions. The standard EFI partition table allows for 128. Each partition is identified by two GUIDs: the first identifies the type of partition (such as Mac HFS, or PC Data), the second is a serial number for that specific partition.
GPT also duplicates its partition table, keeping a secondary backup on the end of the disk. This allows the drive to remain readable even if the main critical partition information is damaged or corrupted. Both tables also have a calculated checksum, so the system can detect a corrupt file partition index, and know to use the duplicate. That protects and enhances the resiliency of GPT's disk index integrity.
In order to maintain backward compatibility with MBR, GPT creates a protective MBR placeholder. This prevents disk utilities that assume the use of MBR conventions from overwriting the GPT information on a disk.
If Windows utilities are used to change partitions on a GPT disk, they only see the dummy MBR, and any changes they make will only be reflected in Windows (or other legacy applications). They can not delete Mac partitions, but they can remove its records from the MBR. Once that happens, Windows won't see the Mac disk anymore.
GPT-aware utilities that make changes to the partition also update the dummy MBR information. This enables legacy applications, including Windows XP, to find the correct disk information.
GPT and Windows
The common retail version of Windows XP does not support using GPT volumes; they do appear as normal drives however, because Windows reads the protective MBR and thinks it is a regular 1981-style MBR disk. If you pull the hard drive from a Boot Camp Mac and put it into a PC, you will be able to read the Windows partition. The Apple partition will appear as an unusable drive.
PCs will not be able to successfully boot a Windows install created on a Mac however, because Windows sets up specific hardware drivers. A Windows boot disk is generally not transferable unless it is moved between identical hardware. In contrast, most Mac boot disks can generally be used to boot any Mac.
Microsoft's 64-bit Itanium version of Windows boots from and uses GPT volumes, because the reference platform for Itanium uses EFI. Itanium (IA-64), is not at all compatible with x86 (IA-32) BIOS PCs however. Itanium is an entirely different platform.
Itanium vs. PowerPC
Itanium was Intel's first stab at delivering a 64-bit processor for the PC world. It was hailed as the heir apparent of the x86, and the new architecture that everything was going to eventually adopt.
While PowerPC wasn't adopted the way its partners had hoped, Itanium ended up being an even bigger failure. Itanium didn't even get delivered until 2001, and by then it had missed out on the dotcom extravaganza that had served to float the tech industry through several bad ideas. Had Intel got it out the door earlier, they might have made bank.
Instead, Itanium was derided as the Itanic: it was hot, inefficient, expensive, had little custom software, and its ability to run x86 software in a compatibility mode turned out to be less impressive than everyone had expected.
The Itanium Killer
It was both simpler and more backward compatible, and has become the de facto standard for 64-bit BIOS PCs. Intel was forced to humbly adopt AMD's implementation; Intel call their compatible version EM64T. This apparently stands for “Embarrassing Maneuver in 64-bit Technology.”
Microsoft refers to Intel's EM64T and AMD64 as x64. Versions of Windows that support x64 do not support booting from GPT, because x64, unlike Itanium (IA64), is built upon regular old BIOS PCs, just like all the other 32-bit, non-Apple PCs.
Windows, running on a x64 BIOS PC, can use GPT volumes however; it just can't boot from a GPT disk. This naturally creates some confusion.
Platforms and GPT Compatibility
Imaging and Disk Utilities for GPT Volumes
Currently, there are no easy-to-use disk utilities that can non-destructively change GPT partitions after they have been created. Apple's Disk Utility can create GPT partitions and make room for Windows installs, but it can not change partition structures without wiping out the contents of the drive.
Window's NTFS is a complex file system, and support for writing to it outside of Windows has not yet been fully developed. Linux projects have been working to deliver interoperability with NTFS, and as they make progress, their efforts have been added to Mac OS X. While full support isn't yet available, ntfsprogs enables NetRestore to successfully image NTFS volumes.
That means IT administrators can now clone Windows partitions to quickly set up multiple machines. In other words, they can quickly roll out MacBooks as Windows laptops. I'll show how in my next article.