找回密码
 注册
查看: 1979|回复: 1

请教一下GRUB 是如何加载内核的?

[复制链接]
发表于 2006-3-8 18:43:01 | 显示全部楼层 |阅读模式
早期的LINUX是通过专用的引导程序加载内核的,那现在的GRUB又是如何做的呢?
而且现在的内核体积已经超过了1M,应该不能在实模式下加载了啊。
还请高手指教一二
发表于 2006-3-23 14:20:39 | 显示全部楼层
grub的确是进保护模式的。然后跳到setup.s,或者是head.s,我也记不得了。方法你可以看setup.s跟head.s,然后结合bochs跟qemu调试内核。编译内核的时候加上-g,给汇编器也加-gstub还是-gdbstub,我不记得了,你自己查一下。我是直接改Makefile的,不知道有没有更优雅的办法。
bochs的主要用来调试没打开分页之前的代码,这时候实际运行中的地址跟调试信息里的地址差3G,gdb不能显示代码,一旦打开分页,好象在head.s中,就可以完全用qemu+gdb调。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2025-2-11 09:26 , Processed in 0.046892 second(s), 16 queries .

© 2001-2025 Discuz! Team. Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表