===============================================
快来和我一起享受TOM免费邮箱吧! 看看除了1.5G,还有什么? ![]() ![]() 明星金曲免费送(http://mm.tom.com/ivr/):周杰伦 林俊杰 庞龙 张惠妹 劲爆歌曲尽情点(http://mm.tom.com/ivr/):霍元甲 吉祥三宝 人质 曹操 炫酷彩铃免费送(http://mm.tom.com/cailing/):周杰伦帮你接电话 麻烦女朋友 七里香 小城故事 =============================================== |
1. 把设备重新格式化,让设备的"保留扇区"为 2 个。FAT 文件系统的"保留扇区"其实就是引导代码的存放空间。通常这个保留扇区的数目为 1, 也有超过 1 的(主要是在 FAT32 中),但这个最小值 1 用得很普遍。NTFS 没有保留扇区这个概念,但 NTFS 实际上保留了 16 个扇区专门存放引导代码。EXT2 也没有保留扇区这个概念,但 EXT2 实际上保留了 2 个扇区专门存放引导代码。重新格式化,让 FAT 引导扇区的数目最少为 2, 这样做的好处是,我们编写代码比较简单,不需要更动现有 GRLDR 的结构(这样的话,其实 GRLDR 没有任何地方需要更动)。重新格式化的不利之处是,用户是否愿意?用户是否理解引导扇区数目扩大为 2 的必要性和好处?我们可以在 bootlace 中这么做:当发现保留扇区为 1 时,只安装传统的单一扇区 GRLDR 引导代码(没有 CHS 自适应功能),而当发现保留扇区多于 1 时,我们就安装新的两个扇区的 GRLDR 引导代码(具有 CHS 自适应能力)。这样供用户选择。一旦用户遇到启动困难,我们建议他重心格式化移动设备,让保留扇区数目至少为 2 。
2. 我们仍然只用一个扇区的引导代码。这样,当把这个扇区中加入 CHS 自动探测的代码后,就无法装入完整的 GRLDR 到内存了,而是只能装入 GRLDR 的第一扇区到内存。这样的话,GRLDR 第一扇区中还得编写继续装入 GRLDR 其余部分的代码。这样的话,GRLDR 的结构和代码就都需要做调整了。即便这能够做到,那么代码空间的使用仍然是十分紧张的。空间紧张的话,将来遇到 BUG,就没有足够的空间来缓冲、排解所遇到的 BUG。
因此,我觉得第一种方案更好控制,我更倾向于第一种。
好了,请大家发表一下各自的意见,帮助我做出分析判断。