Boot – Relationship Between EFI System Partition and UEFI *.efi Files

bootbootloaderefiuefi

I read that there needs to be an EFI system partition.

The EFI System partition is a partition on a data storage device that
is used by machines that adhere to the Extensible Firmware Interface.
It contains the boot loader programs for all operating systems
installed (in other partitions) on the device, device driver files
(used by the firmware at boot time) for other devices, and system
utility programs that are intended to be run before an operating
system is booted.[1]

source: http://en.wikipedia.org/wiki/EFI_System_partition

I also read that there needs to be a particular file on a certain partition called *.efi.

UEFI does not rely on a working boot sector only, but needs a special
partition table referring to a special partition containing a
specially located file with a standardized name depending on the
actual architecture to boot (\EFI\BOOT\boot[architecture name].efi).

source: http://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface

Are the EFI system partition, and the special partition one and the same partition, or are these both separate and necessary structures for booting? How do they work together (are they two different stages of the boot process, like one for all OS-es and one for a particular OS)? Also, do both these structures apply to UEFI?

Best Answer

No, a partition is not one and the same as a file; and Wikipedia is misleading you.

That second paragraph is wrong on pretty much all points. EFI does not require any such things, and never relies upon a boot sector. If you want the gen on this, I suggest reading the actual EFI specification. It's fairly clear on what the \EFI\BOOT\BOOTxxx.EFI files are all about. They are the fallback default if nothing is configured in the Boot Manager. Normally, however, something will be configured in the Boot Manager.

EFI does not require a special partition table, it being capable of using both the old PC/AT (a.k.a. MBR or MS-DOS) partitioning scheme and the new EFI partitioning scheme. Nor are EFI boot applications specially located. Their locations are stored as paths in individual boot options. In theory, they don't even have to be on the EFI System Partition. They could in theory be on any volume whose filesystem format the firmware understands. In practice, the ESP is both the expected place that users will look at first and is guaranteed to exist by the platform and be locatable by EFI programs.

Further reading

Related Question