How does UEFI pass RAM information from bootloader (like GRUB) to different operating systems?
13:57 03 Feb 2026

I have a question regarding the UEFI boot process and how it handles memory information:

  • UEFI reads the Serial Presence Detect (SPD) data from RAM chips and "knows" the available physical RAM regions (Physical Frame Numbers, PFNs).

  • This information is crucial for the operating system to formulate its virtual-to-physical address translation.

My question is: how is this initial knowledge of RAM passed from UEFI to the operating system? Specifically, when using a bootloader like GRUB, how does it support passing this memory information to a diverse range of operating systems, such as Linux and Windows?

I'm particularly interested in understanding the mechanisms involved in this process and any relevant protocols or data structures used.

I've located this source, and was wondering if this means after GRUB calls GetMemoryMap, OS only take memory map information from GRUB, instead of calling GetMemoryMap.

memory-management operating-system ram bootloader uefi