巧妙的地方在于,仿真软盘只能在 CPU 的 real mode 下访问软盘。如果你的软盘映像早早就进入 linux 的 kernel 了,那么,进入 linux kernel 之后的 CPU 是处于 386 保护模式,此时将无法通过 BIOS 的 int13 来访问我们的仿真软盘了。如果你的软盘映像中的程序此时还要访问软盘,那么你会遇到各种失败的错误。
如果你的软盘映像是像下面这样设计的,那么你应该不会遇到障碍。
GRUB4DOS 接管控制之后,它只需要一次性将 linux kernel 和 initrd 装入内存,在 grub4dos 的 boot 命令开始运行 linux 之后,再也不需要访问软盘了,而 linux 只访问内存中的 initrd 以及硬盘、光盘等设备。这样的设计总会成功,你想失败都难。
“将 linux kernel 和 initrd 装入内存”的用法大致是像这样的:
title boot linux
kernel (...)/vmlinuz ................
initrd (...)/initrd.gz
boot
以上这些都是 linux 的常规引导过程,没有任何特别的。如果遇到任何问题,可以到 linux 论坛上询问、解决。
[ Last edited by 不点 on 2007-11-30 at 11:18 AM ]作者: youmubuluo 时间: 2007-11-30 11:55 谢谢!我在试试