U盘系统的原理特点
由于U盘芯片种类繁多,量产从一定程度上来说可操作性还是不是那么方便,而水货等劣质U盘的量产成功率更是让人不敢恭维,对于存储卡等的量产难度更大。而不量产制作启动U盘由于种种复杂原因,不同BIOS对U盘CHS/LBA参数处理结果不尽相同,导致同一个U盘,在一台机器上BOOT成功,在另一台机器上就可能BOOT失败。开源社区的bean提出了巧妙构思,开发出fbinst,基本解决了BIOS下的CHS/LBA参数适应调整问题,使U盘BOOT成功率大大提高。fbinst的构想就是预留8M(1-16064扇区)隐藏区,在每个扇区固定位置都写入该扇区在WIN下的LBA值,并在1-63扇区都写入boot code。BIOS启动时,通过boot code读取预先写入的LBA值,并与BIOS识别的LBA值进行比较,找出差距,倒推出当前BIOS对U盘的识别和访问情况,根据这个情况来调整纠正对U盘的访问。 U盘系统即采用fbinst划分出65M空间,并将DOS、WinPE装在此空间,剩余空间完全和原来一样使用。