|
回复 #1014 chenall 的帖子
这种ud中放grldr,可见区放menu.lst,在我的NF3机上的启动情形可以这么来理解:
1、mbr-->ud中grldr获得控制权后,bd=(ud)(即*0x8280=0x23);root=(fd0,0)(即*0x82A0=0)。这时,当前目录为可见区;而多数其他类型的机器可见区会被识别为hd0,0,即*0x82A0=0x80
2、执行内置默认菜单-->configfile /menu.lst,则会执行可见区的menu.lst,这个时候grldr将根据menu.lst所在的设备重置bd,由于这时可见区设备为0,则*0x8280=0;这个时候在menu.lst中根据8280的值来判断初始启动设备则是不正确的,这也就是说,到这步已经没有办法来判断初始启动设备了,因为8280中的值已经由于执行menu.lst而被重置!
有几个问题:
1、如果上述我的理解是正确的,在grldr中是否还有内存位置保留有最初启动的设备号?如果没有,有不有必要增加一个位置来保存最初启动设备号,这个位置的值只要不人为改变,在grldr的生存期内应一直保持不变。
2、我这台机器U盘不做成UD的形式,会识别成fd0,启动PE等无异常。究竟fd0与fd0,0有什么区别?是不是只有用UD启动时才会出现fd0,0的情况?
3、可不可以说fd0,0实际上是一种错误的格式或者MS的启动文件无法识别的格式?因为毕竟它会造成启动失败。这个我也测试过,fbinst菜单中启动syslinux,也出现detect错误,而syslinux没办法处理这种情况,只能启动失败;而g4d可能将fd0映射为hd0来启动。从这一点来看g4d也够强!
4、或者说fbinst本身有问题,导致产生了fd0,0这样的设备?
[ 本帖最后由 hhh333 于 2011-6-1 17:32 编辑 ] |
|