所幸的是,分区表和FAT磁盘参数表同时还有一种按照相对扇区数来表达的方式,这种表达方式也同时记录在分区表和磁盘参数表中。这样就看软件使用哪一种数据来工作了,如果使用CHS,那么换一台机器就一定不会正常工作,如果使用LBA方式访问磁盘就不会受影响---当然前提是BIOS支持对U盘使用LBA方式访问即扩展INT13H。而XP对FAT16文件系统分区格式化生成的MBR代码以及DOS各版本均需依靠CHS工作,所以按照通常方法在一台机器制作的启动U盘在另一台机器启动就有可能不成功。经测试移动硬盘在各BIOS中的CHS倒是一致的,与该硬盘直接接在IDE口上的CHS相同,所以移动硬盘的USB启动基本上并无困难。
目前我发现的确实受这一问题的影响,从而影响启动的程序有:
1、Windows XP及SP1中文版磁盘管理器分区时所写的MBR
2、USBoot产生的MBR和boot(与1相同)
3、使用bootlace.com将grub for dos 0.41中的grldr.mbr安装至MBR
可能不受这一问题影响的程序有(未经充分测试):
1、ntldr以及随后启动的PE或XP环境(当然了,否则U盘就没法使用了)
2、linux下的install-mbr程序所写的MBR
3、GNU GRUB 0.95和0.97及其使用grub-install命令安装的引导代码
4、syslinux3.36和3.51
5、linux2.4内核以上,基本上linux系统所有程序对FAT文件系统都不会使用CHS
6、grub chs 0.95 0.97(内含的stage1、stage1.5和stage2引导代码)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)