Boot Manager
Version 1.02 12/12/00 321
and fixed media types. This search occurs when the device path of the boot image listed in any boot
option points directly to a SIMPLE_FILE_SYSTEM device and does not specify the exact file to
load. The file discovery method is explained in Boot Option Variables Default Behavior starting
on page 325. The default media boot case of a protocol other than SIMPLE_FILE_SYSTEM is
handled by the LOAD_FILE_PROTOCOL for the target device path and does not need to be
handled by the boot manager.
The boot manager must also support booting from a short-form device path that starts with the first
element being a hard drive media device path (see Table 5-21 in Chapter 5). The boot manager
must use the GUID or signature and partition number in the hard drive device path to match it to a
device in the system. If the drive supports the GPT partitioning scheme the GUID in the hard drive
media device path is compared with the UniquePartitionGuid field of the GUID Partition
Entry (see Table 16-2 in Chapter 16). If the drive supports the PC AT MBR scheme the signature
in the hard drive media device path is compared with the UniqueMBRSignature in the Legacy
Master Boot Record (see Table 16-4 in Chapter 16). If a signature match is made, then the partition
number must also be matched. The hard drive device path can be appended to the matching
hardware device path and normal boot behavior can then be used. If more than one device matches
the hard drive device path, the boot manager will pick one arbitrarily. Thus the operating system
must ensure the uniqueness of the signatures on hard drives to guarantee deterministic boot
behavior.
Each load option variable contains an EFI_LOAD_OPTION descriptor that is a buffer of variable
length fields defined as follows:
Descriptor
typedef struct {
UINT32 Attributes;
UINT16 FilePathListLength;
CHAR16 Description[];
EFI_DEVICE_PATH FilePathList[];
UINT8 OptionalData[];
} EFI_LOAD_OPTION;
Parameters
Attributes The attributes for this load option entry. All unused bits must be zero
and are reserved by the EFI specification for future growth. See
Related Definitions.
FilePathListLength Length in bytes of the FilePathList. OptionalData
starts at offset sizeof(UINT32) + sizeof(UINT16) +
StrSize(Description) + FilePathListLength of the
EFI_LOAD_OPTION data structure.
Description The user readable description for the load option. This field ends with a
Null Unicode character.