|
自己动手DIY,应是一大乐趣。最近,我花了不少时间DIY内置网络的PE,反复测试制作下,有了不少的收获,在此与大家分享。
DIY目标: 兼具老毛桃911版和最帅RBOOT版之长,在启动快速和内存占用方面达到一个较满意的效果。 当然,大小也适中。
用材:PE核心主要取自911版,部分用老九32MPE中的文件替换,以减少体积。 使用软件主要取自911版,OPERA取自最帅版。
制作过程:
第一阶段:
1、对比了网络上很多号称20M以下,25M以下的小型PE,发现它们主体核心和911版基本一致。 小的原因主要是少了driver,以致很多小PE无法识别SCSI硬盘和新型硬件。一个\driver目录就小了近7MB。 其次是很多文件都采用了压缩版,特别是shell32等资源文件都用了压缩得较厉害的版本。
2、对压缩后的效果而言,采用压缩后dl,只能使IMG文件减少,而压缩至im_则并无多大效果。 鉴于稳定性方面的考虑,我采用了不少老九32MPE中的压缩文件,但shell32等资源和核心文件仍然使用911版。 这样,核心文件不变,采用NTFS格式IMG文件就较原版小了不少。
3、首先去除了软驱支持以减少启动时间;然后去除ramdisk,不再有B盘。 FBWF未变,其配合pecmd.exe比ramdisk更好。
4、先制作软件内置以积累经验并测试内存占用和稳定性。 将常用软件内置到IMG中,改写相应的配置文件pecmd.ini。经过不断改制和虚拟机反复测试,其内存占用相当庞大; 索性不管,将OUTER_COMMON.7Z和NET_PART.7Z中的文件也全部都放到IMG中,经测试,其内存占用更到了相当大的地步,远超RBOOT。
5、于是想办法另外测试,使用7Z压缩成7Z格式外置,取代以前的WIM格式外置,在启动最小的PE核心后再解压至X盘。 但测试结果与预想的有相当差距,内存占用仍然相当庞大,到了我认为不可接受的地步(需要180-190M内存)。
经过以上第一阶段测试,我终于得出结论:Wim挂载程序仍然是节省内存的最佳方法。 大家可自己实验:911版测试,其挂载WIM并全部启动,只比小最启动多3MB内存。
第二阶段:
6、经过第一阶段的不断测试,我决定内置WIM。 将常用软件压成WIM,OUTER_COMMON.7Z和NET_PART.7Z解压到IMG相应目录中。 改写pecmd.ini,其中需注意FBWF需在MOUN之后开启。 经测试完全可行,但内存占用还是很可观。
7、优化一:OUTER_COMMON.7Z和NET_PART.7Z文件不直接放到系统目录,而同样压成WIM,挂载到X盘自己定义目录。我猜想问题应该不大。 于是动手实验之,开始时我直接MOUN到system32目录,犯了想当然的错误。 实验后发现没有能挂载成功。于是在%WINDIR%下新建一目录测试,挂载成功,但不能正常使用。 思索后发现是没有提供环境变量,系统找不到。 在pecmd.ini中将自己定义目录写入环境变量,实验果然成功。
8、优化二:对内存占用我仍然觉得有潜可挖。 对照老毛桃的系统目录下文件说明,我反复实验,将大概接近3MB的文件外置WIM后再挂载仍然可正常使用。 于是,现阶段我的文件结构是这样:
A、最小PE核心(比任何一个最小PE核心都小,因为又挖了3MB的文件外置),功能同911版,DRIVER目录下一个文件未减(除了2个软驱支持文件);
B、WIM文件,使用IMAGEX制作,有2个index,1为程序;2为外同的系统文件和原OUTER_COMMON.7Z和NET_PART.7Z中的文件。 为但于调试和他人使用,并没有全部写入pecmd.ini,而是和WIM配套又写了一个INI文件。
至此,我的内置带网络PE制作基本成功,实现了启动速度提升(主要是改写配置文件和取消软驱支持)和较满意的内存占用(能WIM挂载的全部挂载,并使用NTFS格式IMG,最大程度榨干IMG,仅6KB剩余空间)
第三阶段:
9、但我仍然不满,因为网络启动较RBOOT为慢,而且这个慢感觉太明显。 详细对比研究了RBOOT的配置文件和批处理文件,似乎主要出在启动服务上。 测试多次,找到了解决办法:将原来的START_NET.CMD改写,在DEVI之后,使用RBOOT中BARTPE -minipe方式启动,其后启动服务和参照RBOOT缩减,这样大量减少了启动网络的时间。 最后我干脆来个绝的,直接在ini中载入桌面之前启动START_NET.CMD,这样启动PE进入桌面后就已经启动网络了! 为此大概多耗5秒启动时间。 我实机测试PE直接带网络启动到桌面需要35秒,应该说基本上在我可以接受程度之内。
这样,我的DIY目标不仅完成,似乎还有超额的。情况如下:
文件格式:IMG
文件大小:FAT32格式约65MB,NTFS格式约57MB
启动时间:35秒(实机测试,到桌面后就已经启动网络完成了)
内存占用:139MB (VPC虚拟机测试)
附带程序:FINALDATA、GHOST83、VDM、WINPM、OPERA、XP资源、SETUPXP.EXE、PASSWDRENEW.EXE
输入法:内置(另外添加了输入法指示器ineternat,这个东西纯粹为好看,可有可无,还多占了4-5MB内存。
网络支持:是
显示驱动、声卡驱动:不含
DIY真是既辛苦又有乐趣的事,我DIY这个PE,写写很简单,不过9步,但前后陆陆续续持续了2个星期。 有时为了一个小问题需要在论坛和网络花很多时间搜索来解决。深感独自DIY自己PE的不易,所以将这一过程写出来与大家分享,或许能对您有所帮助。 |
|