Hi,

Nikolay Nikolov wrote:
> I haven't looked at GRUB's MBR code, but there's enough space in the MBR to
> scan the GPT entries, find a specific GUID partition type and load the first
> several kilobytes from it and transfer control to it.

Well, GRUB goes a different way on legacy BIOS. It boots its core code
without knowing about partitions and then loads the modules which its
configuration expects to need. I understand GPT is handled by "part_gpt"
and MBR partitions by "part_msdos".


> The code takes up only 262 bytes so far

It is astounding what can be squeezed into 440 bytes of x86 machine code.

-----------------------------------------------------------------------

I meanwhile learned that the El Torito boot image eltorito.img used by
grub-mkrescue is not a plain copy of cdboot.img but rather a
concatenation of cdboot.img and a core.img :

  
https://www.gnu.org/software/grub/manual/grub/grub.html#Making-a-GRUB-bootable-CD_002dROM
  "For booting from a CD-ROM, GRUB uses a special image called cdboot.img,
   which is concatenated with core.img. The core.img used for this should
   be built with at least the ‘iso9660’ and ‘biosdisk’ modules."

So the role of the BIOS partition is properly fulfilled by the El Torito
boot image which has 27874 bytes in my example ISO from grub-mkrescue.


Have a nice day :)

Thomas
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to