Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Protocols Bootable Image Support
Version 1.10 12/01/02 11-7
11.2.2 Partition Discovery
EFI requires the firmware to be able to parse legacy master boot records, the new GUID Partition
Table (GPT), and El Torito logical device volumes. The EFI firmware produces a logical
BLOCK_IO
device for each EFI Partition Entry, El Torito logical device volume, and if no EFI
Partition Table is present any partitions found in the partition tables. Logical block address zero of
the BLOCK_IO device will correspond to the first logical block of the partition. See Figure 11-1.
BLOCK_I/O
DISK
Partition Partition
Partition Table
Pointers
to partitions
Partition Table
Pointers
to partitions
Partition
Partition
OM13159
Figure 11-1. Nesting of Legacy MBR Partition Records
The following is the order in which a block device must be scanned to determine if it contains
partitions. When a check for a valid partitioning scheme succeeds, the search terminates.
1. Check for GUID Partition Table Headers.
2. Follow ISO-9660 specification to search for ISO-9660 volume structures on the magic LBA.
Check for an El Torito volume extension and follow the El Torito CD-ROM
specification.
3. If none of the above, check LBA 0 for a legacy MBR partition table.
4. No partition found on device.
EFI supports the nesting of legacy MBR partitions, by allowing any legacy MBR partition to
contain more legacy MBR partitions. This is accomplished by supporting the same partition
discovery algorithm on every logical block device. It should be noted that the GUID Partition
Table does not allow nesting of GUID Partition Table Headers. Nesting is not needed since a
GUID Partition Table Header can support an arbitrary number of partitions (the addressability
limits of a 64-bit LBA is the limiting factor).