Here is tagged mbi proposal rebased for multiboot2. I defined begining of tag buffer as starting with total mbi size to make relocation and memory mapping trivial. Current problems: - I haven't migrated the a.out (as oppose to multiboot kludge) symbols, drives table and ROM configuration table. I'm not familiar with these fields. What are they used for? -Memory usage. Additionally to the space occupied by payload multiboot specification uses memory for mbi, ELF sections and modules. Moving all this information around without overwriting may be a difficult task. Possible alternatives: - Put modules and sections in mbi. But then one-chunk mbi may not find enough available space in the memory - Add a map of memory used by multiboot separately from memory map. I don't think it's worth it since this information is easily available by traversing mbi anyway. - Add requirements on position of modules. It actually just moves complexity from payload to bootloader. (for grub I wrote newreloc layer for such requirements present in different protocols, it's currently in late alpha, available at people/phcoder/newreloc) - Leave it as is and propose some code to do moving mbi around sanely under non-copyleft license. -- Regards Vladimir 'φ-coder/phcoder' Serbinenko