启用GRUB以从内核自动启动
-
03-07-2019 - |
题
我正在为操作系统开发内核。为了执行它,我决定使用GRUB。目前,我有一个脚本附加到GRUB的 stage1
, stage2
,一个pad文件和内核本身,使它可以启动。唯一的问题是,当我运行它时,你必须让GRUB知道内核的位置以及手动的大小然后启动它,如下所示:
kernel 200+KERNELSIZE boot
KERNELSIZE
是块中内核的大小。这很好,一开始就没问题,但是可以在二进制文件中获取这些值并使GRUB自动启动内核吗?有关如何实现这一目标的任何建议吗?
解决方案
我想你可以制作自己的menu.lst配置文件,在grub shell中加载“configfile /path/to/menu.lst"然后做“设置(hd0)”根据需要替换值。我只是猜测..不知道你的自定义设置有什么不同。
其他提示
http://www.gnu.org/software/grub/manual/grub.html#Embedded -data 提供了有关GRUB中阻止列表存储的一般信息。最重要的是,它提到块列表存储在stage2中明确定义的位置。
您可能希望查看GRUB源代码以确定具体位置。
不隶属于 StackOverflow