启用GRUB以从内核自动启动

Cri*_*omo 13 operating-system kernel grub osdev

我正在为操作系统开发内核.为了执行它,我决定使用GRUB.目前,我已经连接到GRUB的脚本stage1,stage2,垫文件,这使得它可引导内核本身一起.唯一的问题是,当我运行它时,你必须让GRUB知道内核的位置和手动的大小然后启动它,如下所示:

kernel 200+KERNELSIZE
boot

KERNELSIZE是块中内核的大小.这很好,一开始就没问题,但是可以在二进制文件中获取这些值并使GRUB自动启动内核吗?有关如何实现这一目标的任何建议?

小智 2

我想您可以制作自己的 menu.lst conf 文件,使用“configfile /path/to/menu.lst”在 grub shell 中加载该文件,然后根据需要执行“setup (hd0)”替换值。我只是猜测......不知道您的自定义设置有什么差异。