1
我想用Grub2启动定制内核。我用老(蛴螬1)多重头:在Grub2中启动定制内核
.set flags, 0x0
.set magic, 0x1badb002
.set checksum, -(magic + flags)
.align 4
.long magic
.long flags
.long checksum
...
movl %eax, magic
但它不与GRUB2工作,所以我已经搜查了新的多重引导规范,并发现它:http://bzr.savannah.gnu.org/lh/grub/branches/multiboot2/annotate/head:/doc/multiboot2.h (它不是一个真正的规范,它只是头文件)
所以,我现在用的这个多重标题:
.set flags, 0x0
.set magic, 0xe85250d6
.set magic_the_second, 0x36d76289
.set checksum, -(magic + flags)
.align 4
.long magic
.long flags
.long checksum
...
movl %eax, magic_the_second
但它也不起作用: 没有多重头
有什么建议吗?
谢谢!
感谢,但所需的所有信息?或者从#multiboot 2标题到#tags? – Vanzef
我认为装载机入口和地址信息都是需要的(加上结尾的当然),但我会检查代码中的链接以确保 –
如果内核采用ELF格式,则不需要额外的标签除了终止标签。 –