GRUB如何在0x100000处加载内核

问题描述 投票:2回答:1

我正在从头开始编写引导程序和内核,我的目标是创建一个既可以由GRUB也可以由我的引导程序加载的内核。不过,问题不在于内核。我不知道如何在0x100000加载内核,这是grub加载内核的地方。 0x100000的大小不足以容纳16位寄存器,并且太大而无法使用分段(使用BIOS中断读取磁盘时使用地址缓冲区es:bx)。

所以我的问题是,GRUB如何将内核加载到内存中?

x86-64 grub2
1个回答
0
投票

我正在通过《 Little Os Book》构建内核,据我所知,由于内核是在链接描述文件中指定的,因此内核已加载到1MB地址。

您可以签出书籍here,阅读链接内核

© www.soinside.com 2019 - 2024. All rights reserved.