Jan 05 2008

NT Loader + Grub4DOS 多重启动U盘

Category: 技术ssmax @ 15:53:47

NT Loader + Grub4DOS

因为Avlgo引导器默认是不支持多重配置选单的,所以前面我使用了特殊的方式编辑处理Avlgo的引导配置文件,以期解决U盘启动盘符变动引发的问题。从网友的反馈看,这种方式引导DOS启动软盘镜像,失败率还是比较高。基本上出问题的情况都是NT Loader引导正常,但是到Avlgo的环节出错。因此这套方案,依然保留NT Loader作为MBR引导器,用Grub4DOS来引导OS。

1、给U盘写入NTLDR的MBR,此项工作可以用PeToUSE来完成,也可以用其它方式达成目标,如bootsect。


2、把NT Loader所需的文件NTLDR和NTDETECT.COM拷贝到U盘根目录。

3、编辑NT Loader启动菜单Boot.ini。用任何文本编辑器创建一个Boot.ini文件,内容如下:
[boot loader]
timeout=0
default=C:\grldr
[operating systems]
C:\grldr=”Boot Menu”

Boot.ini是NT Loader的菜单配置文件,timeout参数设置的是菜单等待时间,如果在设定的时间(本例为0秒)用户没有进行选择,就自动加载default项默认的项目。

4、拷贝Grub4DOS文件,把Grub4DOS里面的grldr拷贝到U盘根目录;在U盘根目录创建一个Boot文件夹,把Grub4DOS的中文字体文件Fonts.tz和菜单背景图片文件Splash.gz拷贝到这个文件夹下。在U盘根目录创建一个grubidx.txt文件,内容无所谓。

5、把DOS软盘镜像文件dos.ima拷贝到U盘的Boot文件夹下。

6、把老毛桃WinPE里面的WINNT.XPE和WINPE.IS_文件拷贝到U盘根目录;把WXPE文件夹下面的SETUPLDR.BIN拷贝到U盘根目录下并更名为LDRXPE,注意没有后缀哦。把“外置程序”文件夹拷贝到U盘根目录。

7、创建Grub引导菜单文件,用任何纯文本编辑器在U盘根目录创建一个Menu.lst文件,内容为:
timeout 30
default 0
splashimage /boot/splash.gz
foreground ffff00
fontfile /boot/fonts.gz

title 启动 WindowsPE
find –set-root /grubidx.txt
chainloader /ldrxpe

title 启动 MS-DOS 7.1
find –set-root /grubidx.txt
map –mem /boot/dos.ima (fd0)
map –hook
chainloader (fd0)+1
rootnoverify (fd0)

做完这些,U盘就可以启动了。

菜单项目说明:
第一行设置等待30秒的等待时间;
第二行设置如果30秒用户没有选择,就默认启动第一个引导项目“启动 WindowsPE”;
splashimage项目设置Grub4DOS启动菜单的背景图片,图片路径为/boot/splash.gz;
foreground项设置启动菜单文字颜色为亮黄色;
fontfile项设置中文字体文件为/boot/fonts.gz
下面两个以title开头的小节就是启动菜单的两个启动项,title后面的文字将显示在菜单中;
find –set-root /grubidx.txt这一项是自动搜索grubidx.txt这个事先创建好的特征文件,它只要找到这个文件,就把文件所在的路径设置为根设备,这样就不会被盘符变化困扰了。至于特征文件的内容,那就无所谓了。
chainloader /ldrxpe就是启动WinPE的XPE镜像。
map –mem /boot/dos.ima (fd0)是装入/boot/dos.ima这个软盘镜像,并且虚拟成fd0.
map –hook是让装入的软盘镜像立即加载生效。
rootnoverify (fd0)指定把刚才虚拟的fd0设置为根设备。

本来,Grub4DOS可以直接安装到U盘的根目录,但是我反复尝试了多次,MBR是写进去了,可总是报错无法引导。所以还是用NT Loader做MBR引导器,由于NT Loader不支持加载镜像文件,所以MBR引导成功后,把控制权交给Grub4DOS,由Grub4DOS来加载WinPE的XPE镜像以及MS-DOS的软盘镜像实现启动对应OS的功能。


Jan 05 2008

WINPE的目录结构

Category: 技术ssmax @ 13:54:48

自己制作多个PE集成启动盘的时候需要了解

下面介绍了一下pe里的一些文件路径及名称的设置情况:
file://
│AUTORUN.INF //无所谓有无,在windouws中用
│WINNT.XPE //必须放在根目录下,这是一个文本文件,用记事本可以打开,是用来指定WINPE.IS_存放目录的。名称可在SETUPLDR.BIN中更改,名称字符数必须和原来相同
├─MINIPE //外置程序的存放目录,名称和所在路径都可以任意更改,在WXPESYSTEM32PECMD.INI和WINPE.INI中有路径设置
│OP.WIM //外置程序。名称和所在路径都可以任意更改,在WINPE.INI中设置
│WINPE.INI //外置程序配置文件。名称和所在路径都可以任意更改,在解压后的WINPE.IS_中WXPESYSTEM32PECMD.INI中设置
│WINPE.IS_ //pe的核心文件。名称和所在路径都可以任意更改,由WINNT.XPE确定(但注意CAB里面文件名必须为WINPE.ISO)
├─SETUP //将PE从光盘安装到硬盘的工具,与PE启动无关,可以无视掉。
││PESETUP.EXE
││PESETUP.INI
│└─MYINS
│AERO.SYS
│CHECKUSB.EXE
│GRUBGUI.EXE
│GRUBINST.EXE
│HPUSBFW.EXE
│MD5.EXE
│MYINS.DLL
│MYINS.EXE
│NTBOOT.EXE
└─WXPE //存放NTDETECT.COM的目录,名称可修改,必须为4个字符
NTDETECT.COM //Windows NT系统启动文件。路径在SETUPLDR.BIN中更改,且父目录必须为4个字符;名称最好不要改,以免发生未知错误,而且所有的PE都要用这个一文件,光盘上只要有一个就可以。
SETUPLDR.BIN //光盘引导文件。注意,这个是在用grub4dos作引导时的名称和所在路径都可以任意更改,如果用easyboot来作引导,最好只改名称且与原字符个数相同。在UltraISO提取的光盘上引导程序BIF中修改。而我现在讲的就是用grub4dos,简单多了。


Jan 05 2008

U盘量产及启动相关知识

Category: 技术ssmax @ 11:24:17

转自无忧

第一篇 有关量产工具

1. 什么是量产工具,有何作用
    量是指批量的意思,即量产工具可以一次性生产出很多U盘,只要你的USB孔足够。
   
量产工具是针对U盘主控芯片进行操作的由厂商开发的低层软件,作用:
  1)
低格U
  2)
生产加密盘
  3)
分区,可以生产只读分区,更改U盘介质类型(removabel fixed
  4)
量产出USBCDROM,此作用可以做启动光盘。

 

2. 读卡器所组成的U盘能量产吗?
不能,也许以后会有这样的读卡器。

3.移动硬盘能量产吗?
目前不能,芯邦在搞,据说明年会出来。
如果真出来这样的工具,CD\DVD销量可能要大大下降了。

4.所有U盘都能量产吗?
应该是的,就看有没有合适的量产工具放出。主控厂商肯定都有的。

5.如何判断U盘主控
  1)
最准确方法-拆盘
  2)
根据软件vid & pid结合已知的USB厂家列表来判断主控。但vid & pid是可以随意改的,对于劣质flash存储U盘可能不准;另外也可以用VMWARE来判断。参见相关贴子。

6. 什么量产工具好
都差不多,就看熟不熟练。

7. 使用量产工具要注意什么
  1)
不要怕,大胆的弄,U盘不会坏的
  2)
量产也有经常出错的时候,如U盘变成8M,同1),再次进行。

8. 量产出的CDROM最大可以是多少
   
不同版本,牌子不一样,我的4GICREATE的可以量产出1G多点。这个技术指标开发商不透露。

9. 量产工具版本越高越好吗?
不一定,还要看是不是支持你的U盘的类型。

10. 量产出的CDROM启动兼容性、速度怎样?
新主板几乎都可以,老主板有的HDDZIP都不行,但CDROM可以;如果主板支持USB2.0且打开“high speed”,U盘也支持USB2.0这个启动速度是很快的,用来安装XP就是一例。

11. 不同的量产工具为什么不能通用
主要区别在于不同厂家的主控芯片都有其保密的指令与函数,没法通用。

12. 为什么有的CDROM要以启动2次才可以成功
这个,有请高手研究
说到这里,涉及到了BIOS内容,不同BIOS的处理情况不一样,我们这里没有这样的专家。当年BINBINCRACK VISTA的时候,BIOS专家出面,解决了不少问题,当然是针对AWARD的,至于AMI的,还没有这样的公开程序。如果从BIOS层面解决对USBCDROM的识别问题,就太好了。

13. 从哪里可以得到量产工具
  1)从U盘厂家网站,一般主控开发商都给他们主控的。
  2
)从主控开发商网站。
  3
search,包括网络和这里
  4
)打电话或发EMAIL

14. MP3 MP4等设备可以做启动盘吗?
  硬件基本差不多,都可以的。
 

15. 量产成CDROM,剩余空间怎么用?
  剩余空间会被识别成为一个独立的U,可以做成fixed盘,进一步分区;也可以为removable盘。剩余空间可以用来作启动,也可以当成普通U盘储存文件.

16. 量产工具可以在VISTA下运行吗?
  目前不可以,在VISTA下会存在各种错误。

第二篇 U盘启动

1. U盘启动有几种方式


  目前有如下几种:
  1CDROM方式,这个要用量产工具,启动的兼容性较高
  2HDD方式,这个使用率也较高
  3ZIP方式,这个好像要淘汰了
  4FDD方式,这个基本淘汰

2. 哪种启动方式成功率较高
  如上,基本上是1> 2> 3

3. HDD方式或ZIP方式启动PE,有几种方法
  1NTLDR+GRLDR
  2GRUB INSTALLED TO MBR
  3DOS+GRLDR
  4LINUX ETC.+GRLDR
  5NTLDR  INSTALLED TO MBR
  推荐使用第2种和第5种,成功率很高

4. U盘启动的兼容性差吗?
  这是误解,对于老一点的主板,因为BIOS及启动速度的问题,最关键的是标准不统一的问题,启动却有困难,但新出的主板,基本都可以用CDROMHDD方式启动的,且直接支持USB2.0因此,装系统等非常的快。
 

5. U盘启动要注意什么?
  仔细查看你的主板BIOS设置,是否正确设置U盘为第一启动。
  有的主板,USB选项中有“FULL SPEED”“HIGH SPEED”之分,要打开后者,这样速度会很快。
  对于CDROMHDD/ZIP双启动,如果主板没有识别出HDDZIP,则使用CDROM上的GRLDR也搜索不到HDD的。
  一般主要识别出CDROMHDD,都可以启动成功。

6. U盘量产成CDROM方式有什么好处
  这个,都明白,CDROM标准统一,启动成功率高,当然文件也安全。

7. U盘量产后速度为什么变慢
  这个我也在求解,不过,我发现我的量产出的HDD,如果经过HDD重新调整大小,速度却可以变快。

8. 移动硬盘应该用什么格式
  移动硬盘应该使用HDD格式,Xp下格式化然后设置移动硬盘主分区为活动即可

10. 使用量产工具启动CDROM后,另一个U盘分区能否实现启动
  可以,使用HPUSBFWFlashBootU盘启动格式化工具就可以实现

11.为什么U盘启动时加载镜像时间很久
  PE镜像加载的时间取决于你的主板,有些主板上要七八分钟才能加载的镜像,在支持USB2.0启动的主板上也许只要几十秒
 

12.可以从U盘启动,移动硬盘为何不能启动
  首先确认你的移动硬盘已经有PE文件,并且移动硬盘的主分区已经激活(用PTDD重建MBR或者执行FDISK   /MBR),
  然后在插上移动硬盘的情况下,打开BIOS中的硬盘项,里面应该有两个硬盘,把移动硬盘上移到第一位(默认是第二位)。

第三篇 U盘硬件基础

1. U盘硬件组成是什么
    主控芯片+存储芯片
    主控芯片存储控制闪存的信息。有的U盘坏了,通过换主控,内容还不丢失,只要闪存没坏。
    闪存,是外国鬼子搞出来的,目前在中国市的五花八门的U盘大多是国外淘汰的劣质闪存做成的,因此容易坏。

2. 主控有几种
    cbm(chipsbank), icreate, 安国, sandiks etc….

3. 闪存有几种
   从存储方式上分为SLCMLC,后者的存储容量比前者大,但速度与寿命短于前者。

SLCMLC选购与识别:  

“有需求才有会去识别。”--懒人星魂的道理。对于选购,我们不禁要问:要以超过摩尔定律的速度,促成MP3容量的大跃进,我们是选择MLC还是SLC呢?现在MP3随身听市场,是买SLC还是MLC闪存芯片的呢?很明显,对容量要求不高,或者对机器质量、数据的安全性、机器寿命等方面来说,SLC闪存芯片的首选。但是,使用SLC闪存芯片,如果需要2G以上的大容量,成本明显是比较高的。   我们该怎么识别SLCMLC呢?主要有两个方法:  

一、看传输速度,如果有两款产品,采用同一芯片,例如目前非常流行的Rockchip,那么写速有23倍优势的就应该是SLC了,而速度上稍慢的则是MLC  

二、看FLASH型号,如果是采用三星闪存、型号以K9GK9L开头则是MLC,如果采用现代闪存HYUUHYUV也是MLC

详细分别:    

MLCMulti-Level-Cell)技术,由英特尔于1997年率先推出,能够让单个存储单元保存两倍的数据量。MLC内存颗粒是个相当良好的低价解决方案,可大幅节省制造商端的成本,但是MLC NAND颗粒制成的CompactFlash卡相较于SLCSingle-Lecel_Cell) 内存颗粒的产品有着写入速度慢、耗电多、寿命短的缺点,MLC颗粒制成的产品只有10X1.5Mbyte/sec)的写入速度,SLC 颗粒制成的产品可以达到 22X3.2Mbyte/sec)的写入速度。

Item SLC MLC
电压 3.3V/1.8V 3.3V
生产工艺 / 芯片尺寸 0.12um 0.16um
页容量 / 块容量 2KB/128KB 512KB/32KB or 2KB/256KB
访问时间(最大) 25us 70us
页编程时间(典 型) 250us 1.2ms
可否局部编程 Yes No
擦写次数 100K 10K
数据写入速率 8MB/S+ 1.5MB/S

NAND Flash SLCMLC技术解析

许多人对闪存的SLCMLC区分不清。就拿目前热销的MP3随身听来说,是买SLC还是MLC闪存芯片的呢?

在这里先告诉大家,如果你对容量要求不高,但是对机器质量、数据的安全性、机器寿命等方面要求较高,那么SLC闪存芯片的首选。但是大容量的SLC闪存芯片成本要比MLC闪存芯片高很多,所以目前2G以上的大容量,低价格的MP3多是采用MLC闪存芯片。大容量、低价格的MLC闪存自然是受大家的青睐,但是其固有的缺点,也不得不让我们考虑一番。
 

什么是SLC

SLC英文全称(Single Level Cell——SLC)即单层式储存 。主要由三星、海力士、美光、东芝等使用。 

SLC技术特点是在浮置闸极与源极之中的氧化薄膜更薄,在写入数据时通过对浮置闸极的电荷加电压,然后透过源极,即可将所储存的电荷消除,通过这样的方式,便可储存1个信息单元,这种技术能提供快速的程序编程与读取,不过此技术受限于Silicon efficiency的问题,必须要由较先进的流程强化技术(Process enhancements),才能向上提升SLC制程技术。

什么是MLC

MLC英文全称(Multi Level Cell——MLC)即多层式储存。主要由东芝、Renesas、三星使用。 

英特尔(Intel)在19979月最先开发成功MLC,其作用是将两个单位的信息存入一个Floating Gate(闪存存储单元中存放电荷的部分),然后利用不同电位(Level)的电荷,通过内存储存的电压控制精准读写。MLC通过使用大量的电压等级,每一个单元储存两位数据,数据密度比较大。SLC架构是01两个值,而MLC架构可以一次储存4个以上的值,因此,MLC架构可以有比较好的储存密度。
 

SLC比较MLC的优势:
签于目前市场主要以SLCMLC储存为主,我们多了解下SLCMLC储存。SLC架构是01两个值,而MLC架构可以一次储存4个以上的值,因此MLC架构的储存密度较高,并且可以利用老旧的生产程备来提高产品的容量,无须额外投资生产设备,拥有成本与良率的优势。

SLC相比较,MLC生产成本较低,容量大。如果经过改进,MLC的读写性能应该还可以进一步提升。SLC比较MLC的缺点:

MLC架构有许多缺点,首先是使用寿命较短,SLC架构可以存取10万次,而MLC架构只能承受约1万次的存取。
其次就是存取速度慢,在目前技术条件下,MLC芯片理论速度只能达到2MB左右。SLC架构比MLC架构要快速三倍以上。
再者,MLC能耗比SLC高,在相同使用条件下比SLC要多15%左右的电流消耗。
虽然与SLC相比,MLC缺点很多,但在单颗芯片容量方面,目前MLC还是占了绝对的优势。由于MLC架构和成本都具有绝对优势,能满足未来2GB4GB8GB甚至更大容量的市场需求。 

SLCMLC的识别:  一、看传输速度比如有两款采用Rockchip芯片的产品,测试时写入速度有23倍优势的应该是SLC,而速度上稍慢的则是MLC。即使同样采用了USB2.0高速接口的MP3,也不能改变MLC写入慢的缺点。 

二、看FLASH型号
一般来说,以K9GK9L为开头型号的三星闪存则是MLC,以HYUUHYUV为开头型号的现代闪存应是MLC。具体芯片编号以三星和现代为例:三星MLC芯片编号为:K9G******    K9L*****。现代MLC芯片编号为:HYUU****    HYUV***

  简单总结:  如果说MLC是一种新兴的闪存技术,那么它的“新”就只体现在:成本低!
虽然MLC的各项指标都落后于SLC闪存。但是MLC在架构上取胜SLCMLC肯定是今后的发展方向,而对于MLC传输速度和读写次数的问题已经有了相当多的解决方法,例如采用三星主控芯片,wear leveling技术,4bit ECC校验技术,都可以在采用MLC芯片的时候同样获得很好的使用效果,其性能和使用SLC芯片的没有什么差别,而会节省相当多的成本.