无忧启动论坛

标题: 成功实现RAM+压缩SDI启动! [打印本页]

作者: Rinrin    时间: 2006-3-14 17:39
标题: 成功实现RAM+压缩SDI启动!
方法前面已经讨论过了!
不多说了
我做了一个演示ISO文件
自己试验一下就明白了!
http://free.ys168.com/?rinrin
RAMDISK+SDI(Compressed)目录下
作者: lxl1638    时间: 2006-3-14 17:44
标题: 成功实现RAM+压缩SDI启动!
贺贺!!
作者: lxl1638    时间: 2006-3-14 17:46
标题: 成功实现RAM+压缩SDI启动!
老大,下不了。写个教程吧。
作者: Rinrin    时间: 2006-3-14 17:51
标题: 成功实现RAM+压缩SDI启动!

今天谁在我这里下载NTLDR Debug
搞得流量用光了
.................
作者: dgxhls    时间: 2006-3-14 17:55
标题: 成功实现RAM+压缩SDI启动!
置顶的FTP恢复后传到那吧。
作者: wang6610    时间: 2006-3-14 17:58
标题: 成功实现RAM+压缩SDI启动!
lxl1638 你的64m 03。sdi在这个iso中不能用。
作者: wang6610    时间: 2006-3-14 18:02
标题: 成功实现RAM+压缩SDI启动!
分流:
http://free.ys168.com/?baw ww下
作者: wang6610    时间: 2006-3-14 18:15
标题: 成功实现RAM+压缩SDI启动!
sdi要重新制作
作者: lxl1638    时间: 2006-3-14 18:23
标题: 成功实现RAM+压缩SDI启动!
wang6610 老大,那个64M_03出现什么提示?是不是 NTOSKRNL.EXE 这个文件的问题?
是它就不难办。你先说明一下,我也可以省些时间,最多我把身上的无忧元全送给你。
作者: wang6610    时间: 2006-3-14 18:37
标题: 成功实现RAM+压缩SDI启动!
不要钱啦!
把sdi文件头截去即可!
作者: fujianabc    时间: 2006-3-14 18:47
标题: 成功实现RAM+压缩SDI启动!
先祝贺一下,顶。
作者: fujianabc    时间: 2006-3-14 19:15
标题: 成功实现RAM+压缩SDI启动!
看了一下这个winnt.sif
[SetupData]
BootDevice = "ramdisk(0)"
BootPath = "\I386\SYSTEM32\"
OsLoadOptions = "/minint /fastdetect /rdpath=XPE.IMG"
我去年曾经做过类似的尝试,只是最后写的是/rdpath=XPE.IM_,导致启动没有成功。
另外,以后可以不再用sdiloader等sdi制作工具了。直接用winimage生成一个img,然后用winimage挂在它,修改完这个img后压成cab,即可用setupldr.bin调用启动了。
作者: 天风    时间: 2006-3-14 19:39
标题: 成功实现RAM+压缩SDI启动!
据说WINIMAGE可以把镜像挂载为一个虚拟的盘,不知楼上是否知晓这种方法如何实现!
我至今没有成功!
作者: lxl1638    时间: 2006-3-14 19:45
标题: 成功实现RAM+压缩SDI启动!
多谢各位大师指导,拿64MB_03.SDI做试验成功。现在来对照一下是不是一样:
.SDI文件64M ==> .IMA文件62.7M ==> .IM_文件54.3M ==> .ISO文件55M
这样做出的.ISO基本达到了RAR的压缩程度了,wang6610 老大,做出的结果是不是这样?
作者: Rinrin    时间: 2006-3-14 20:05
标题: 成功实现RAM+压缩SDI启动!
下面引用由fujianabc2006/03/14 07:15pm 发表的内容:
看了一下这个winnt.sif
BootDevice = "ramdisk(0)"
BootPath = "\I386\SYSTEM32\"
OsLoadOptions = "/minint /fastdetect /rdpath=XPE.IMG"
...
是的
setupldr的奇怪特性
即使名字不同
它也能把文件从cab里揪出来
现在还有一个问题
它到底有多聪明?
假如我们把压缩后的文件名改的乱七八糟
它还能找到吗?
作者: leebaker    时间: 2006-3-14 20:21
标题: 成功实现RAM+压缩SDI启动!
先收了,有时间研究一下
作者: lxl1638    时间: 2006-3-14 20:26
标题: 成功实现RAM+压缩SDI启动!
认真观察发现,节省了磁盘光盘空间,但启动速度慢了很多。
作者: fujianabc    时间: 2006-3-14 21:17
标题: 成功实现RAM+压缩SDI启动!
下面引用由hnlyzhd2006/03/14 07:39pm 发表的内容:
据说WINIMAGE可以把镜像挂载为一个虚拟的盘,不知楼上是否知晓这种方法如何实现!
我至今没有成功!
找一个完整版的winimage 8.0(不要用那种绿色精简版的,完整版的在www.winimage.com上有下载),安装之后重启一次,便可以用winimage挂载软盘/硬盘/光盘镜像,还可以挂载vpc的vhd文件(固定容量的)
作者: lxl1638    时间: 2006-3-14 23:32
标题: 成功实现RAM+压缩SDI启动!
忽然想到,PELDR会不会认识vhd文件呢?本是同一家人的。
作者: wang6610    时间: 2006-3-15 07:49
标题: 成功实现RAM+压缩SDI启动!
[这个贴子最后由wang6610在 2006/03/15 07:53am 第 1 次编辑]
下面引用由lxl16382006/03/14 07:45pm 发表的内容:
多谢各位大师指导,拿64MB_03.SDI做试验成功。现在来对照一下是不是一样:
.SDI文件64M ==> .IMA文件62.7M ==> .IM_文件54.3M ==> .ISO文件55M
这样做出的.ISO基本达到了RAR的压缩程度了,wang6610 老 ...
比您的iso小2M!
[UploadFile=aaa_1142380384.jpg]
作者: wang6610    时间: 2006-3-15 09:01
标题: 成功实现RAM+压缩SDI启动!
下面引用由fujianabc2006/03/14 07:15pm 发表的内容:
看了一下这个winnt.sif
BootDevice = "ramdisk(0)"
BootPath = "\I386\SYSTEM32\"
OsLoadOptions = "/minint /fastdetect /rdpath=XPE.IMG"
...
下面引用由hnlyzhd2006/03/14 07:39pm 发表的内容:
据说WINIMAGE可以把镜像挂载为一个虚拟的盘,不知楼上是否知晓这种方法如何实现!
我至今没有成功!
[UploadFile=AA_1142384481.jpg]
作者: lxl1638    时间: 2006-3-15 09:28
标题: 成功实现RAM+压缩SDI启动!
[这个贴子最后由lxl1638在 2006/03/15 09:31am 第 1 次编辑]
下面引用由wang66102006/03/15 07:49am 发表的内容:
比您的iso小2M!
你是用了LZX:21的压缩,一样的。我用LZX:21压缩后比MSZIP压缩的少了3M左右。把镜像挂载为一个虚拟的盘,我也没成功。[UploadFile=mm_1142386046.jpg]
作者: fujianabc    时间: 2006-3-15 10:32
标题: 成功实现RAM+压缩SDI启动!
下面引用由lxl16382006/03/14 11:32pm 发表的内容:
忽然想到,PELDR会不会认识vhd文件呢?本是同一家人的。
peldr当然认vpc的vhd文件的,但是必须是固定容量的那种,rdimageoffset要另外指定一下,具体多少根据不同的文件而定。
作者: fujianabc    时间: 2006-3-15 10:44
标题: 成功实现RAM+压缩SDI启动!
也不知道各位如何操作winimage的,到现在还没成功。
安装完整版的winimage8.0(是一个exe的安装文件),重启之后,打开一个映像文件,然后在image菜单下选择“装载此映像”,然后弹出一个对话框,让你选择影像类型和盘符,按确定之后即可。
作者: fujianabc    时间: 2006-3-15 10:54
标题: 成功实现RAM+压缩SDI启动!
到目前为止,可以说,除了grub直接启动xp embedded需要用sdi文件外。其他的各种ramdisk启动的winpe和xp embedded都可以直接用img文件,而无需再用sdi文件了。
都测试了setupldr启动winpe,ntldr启动xp embedded,全可以用img文件,rdimageoffset参数可以不要,也可以设为rdimageoffset=0
作者: wang6610    时间: 2006-3-15 11:24
标题: 成功实现RAM+压缩SDI启动!
下面引用由fujianabc2006/03/15 10:54am 发表的内容:
到目前为止,可以说,除了grub直接启动xp embedded需要用sdi文件外。其他的各种ramdisk启动的winpe和xp embedded都可以直接用img文件,而无需再用sdi文件了。
都测试了setupldr启动winpe,ntldr启动xp embedded ...

fujianabc:
   img的引导记录您是如何处理的。是不是格为ntfs即可?
作者: fujianabc    时间: 2006-3-15 11:35
标题: 成功实现RAM+压缩SDI启动!
我使用winimage挂载一个映像之后,格式化成ntfs的。
作者: lxl1638    时间: 2006-3-15 12:30
标题: 成功实现RAM+压缩SDI启动!
下面引用由fujianabc2006/03/15 11:35am 发表的内容:
我使用winimage挂载一个映像之后,格式化成ntfs的。
如此说来,做一个可引导的IMG,再在IMG在放置NTLDR(由PELDR改名)、WinNT.SIF和PE的映像等,这个IMG能不能被 EasyBoot Run呢?能不能在 DOS 下被GRUB启动呢?
作者: wang6610    时间: 2006-3-15 12:45
标题: 成功实现RAM+压缩SDI启动!
[这个贴子最后由wang6610在 2006/03/15 01:12pm 第 1 次编辑]
下面引用由lxl16382006/03/15 12:30pm 发表的内容:
如此说来,做一个可引导的IMG,再在IMG在放置NTLDR(由PELDR改名)、WinNT.SIF和PE的映像等,这个IMG能不能被 EasyBoot Run呢?能不能在 DOS 下被GRUB启动呢?
年前我就开用啦!EasyBoot 要借助bcdw启动。

作者: wang6610    时间: 2006-3-15 13:55
标题: 成功实现RAM+压缩SDI启动!
[这个贴子最后由wang6610在 2006/03/15 01:56pm 第 1 次编辑]

各位装载映像还是用她吧!
http://bbs.wuyou.net/cgi-bin/topic.cgi?forum=33&topic=4183&show=0
作者: king8462    时间: 2006-3-15 14:20
提示: 作者被禁止或删除 内容自动屏蔽
作者: king8462    时间: 2006-3-15 14:29
提示: 作者被禁止或删除 内容自动屏蔽
作者: Rinrin    时间: 2006-3-15 14:41
标题: 成功实现RAM+压缩SDI启动!
下面引用由king84622006/03/15 02:29pm 发表的内容:
直接在虚拟机中用楼主的iso启动,出现错误:NTOSKRNL.EXE 有问题!
不知道是什么原因?
是的
这只是个演示文件
为了验证此项技术的可行性
所以没有继续做下去
出现NTOSKRNL.exe没有找到
已经说明成功了
你可以按照上面各位大侠说的方法
编辑一个IMG文件
或者用SDI Loader做一个SDI然后去掉文件头也可以
作者: wang6610    时间: 2006-3-15 17:20
标题: 成功实现RAM+压缩SDI启动!
[这个贴子最后由wang6610在 2006/03/15 05:26pm 第 1 次编辑]

我是用690M的软盘img作的(fat32),压缩后img仅39M,但出现以下提示后启动成功.大侠们再分析一下!
[UploadFile=1_1142414405.jpg][UploadFile=2_1142414417.jpg][UploadFile=3_1142414430.jpg]
作者: wang6610    时间: 2006-3-15 17:27
标题: 成功实现RAM+压缩SDI启动!
[UploadFile=4_1142414828.jpg]
作者: lxl1638    时间: 2006-3-15 17:32
标题: 成功实现RAM+压缩SDI启动!
不明原因。你机子有1G内存吧,虚拟出的 X: 近 700M 啊。
做个64M的IMG试试。
作者: wang6610    时间: 2006-3-15 17:45
标题: 成功实现RAM+压缩SDI启动!
下面引用由lxl16382006/03/15 05:32pm 发表的内容:
不明原因。你机子有1G内存吧,虚拟出的 X: 近 700M 啊。
做个64M的IMG试试。
512M,img大小可变里面文件多大他就多大.


作者: lxl1638    时间: 2006-3-15 18:45
标题: 成功实现RAM+压缩SDI启动!
用一个64M的.SDI文件在虚拟机做对比试验,综合各方面考虑,还是行动选择SDI方式好。
.SDI文件64MB ==> .IMA文件62.7MB ==> .IM_文件51.3MB(LZX:21压缩),
启动.SDI需内存124M,启动.IMA和.IM_需内存都要144M,并且.IMA和.IM_启动比.SDI慢。
启动.SDI需内存124M
[UploadFile=SDI_1142419347.jpg]
启动.IMA需内存要144M
[UploadFile=IMA_1142419382.jpg]
启动.IM_需内存要144M
[UploadFile=IM__1142419402.jpg]
作者: Rinrin    时间: 2006-3-15 18:50
标题: 成功实现RAM+压缩SDI启动!
下面引用由lxl16382006/03/15 06:45pm 发表的内容:
用一个64M的.SDI文件在虚拟机做对比试验,综合各方面考虑,还是行动选择SDI方式好。
.SDI文件64MB ==> .IMA文件62.7MB ==> .IM_文件51.3MB(LZX:21压缩),
启动.SDI需内存124M,启动.IMA和.IM_需内存都要14 ...
这个的意思好像是可用的内存
不是正好说明IMG比较省内存吗
..............
作者: lxl1638    时间: 2006-3-15 19:13
标题: 成功实现RAM+压缩SDI启动!
启动后的状态(包括可用内存和虚拟出的X:)是一样的,可能是.IMA(.IM_)比.SDI少了那么2M(记录磁盘信息、文件目录表等)的文件头,由.IMA(.IM_)转换成一个磁盘时要进行一定量的内存运算。所以启动需的内存大、启动也慢。
作者: fujianabc    时间: 2006-3-15 19:34
标题: 成功实现RAM+压缩SDI启动!
回 wang6610:
你的ramdisk镜像有690M或者700M,这肯定要出问题的,那时刚玩ramdisk的pe时就有一条限制,ramdisk最多只支持512M的镜像启动。
回lxl1638:
我昨天试一楼的那个32多兆的的压缩映像时就发现载入im_时需要额外的内存来解压,虚拟机分配64M内存无法装载那个32多兆的im_。但是很奇怪,装入is_时,似乎无须额外的内存。
至于为压缩的ima载入时需更多内存,我没事过,按理不应该这样啊。
作者: Rinrin    时间: 2006-3-15 23:08
标题: 成功实现RAM+压缩SDI启动!
下面引用由fujianabc2006/03/15 07:34pm 发表的内容:
回 wang6610:
你的ramdisk镜像有690M或者700M,这肯定要出问题的,那时刚玩ramdisk的pe时就有一条限制,ramdisk最多只支持512M的镜像启动。
回lxl1638:
我昨天试一楼的那个32多兆的的压缩映像时就发现载入im_ ...
我认为原因可能是这样的
ISO9660是只读的
所以只分配需要的空间
而IMG虽然压缩过
但是需要留下写入的空间
至于为什么需要大于64M内存
这一点并不清楚
我们不知道setupldr.bin把镜像装载到哪里
作者: lxl1638    时间: 2006-3-15 23:29
标题: 成功实现RAM+压缩SDI启动!
虽然 .IM_ < 64M ,但它解压到内存形成的虚拟盘 X: 和 .SDI 形成的虚拟盘的一样,都是64M,加上解压它所需的内存,启动它就要比.SDI需多些内存了。.IM_只节省磁盘空间,不能节省内存空间。
作者: Rinrin    时间: 2006-3-16 10:33
标题: 成功实现RAM+压缩SDI启动!
下面引用由lxl16382006/03/15 11:29pm 发表的内容:
虽然 .IM_ < 64M ,但它解压到内存形成的虚拟盘 X: 和 .SDI 形成的虚拟盘的一样,都是64M,加上解压它所需的内存,启动它就要比.SDI需多些内存了。.IM_只节省磁盘空间,不能节省内存空间。
早上研究了一下这个问题
用顶楼的32M镜像64M内存无法加载
我用VMware Dump了一下内存
发现它把镜像加载到16M地址处
在>48M的地方又发现了一份镜像
16+32+32=80
于是把内存加大到84M就可以了
同样的道理
16+64+64=144
作者: fujianabc    时间: 2006-3-16 10:37
标题: 成功实现RAM+压缩SDI启动!
[这个贴子最后由fujianabc在 2006/03/16 12:55pm 第 2 次编辑]
下面引用由Rinrin2006/03/16 10:33am 发表的内容:
早上研究了一下这个问题
用顶楼的32M镜像64M内存无法加载
我用VMware Dump了一下内存
发现它把镜像加载到16M地址处
...
强!,看来压缩方式启动img镜像还是有些限制的。
那个16M是否与lzx:21的压缩方式有关,不同的压缩方式,解压缩需的内存不同。
作者: lxl1638    时间: 2006-3-16 12:45
标题: 成功实现RAM+压缩SDI启动!
下面引用由Rinrin2006/03/16 10:33am 发表的内容:
发现它把镜像加载到16M地址处
...
有没有办法修改呢?
作者: Rinrin    时间: 2006-3-16 14:03
标题: 成功实现RAM+压缩SDI启动!
现在还不清楚为什么要两份镜像
另外
修改的难度极大
没有setupldr.exe的符号文件
以前修改setupldr.bin的校验
实际上是修改前面startup.com的部分
代码不长,跟踪也比较容易
......................
作者: fujianabc    时间: 2006-3-16 15:36
标题: 成功实现RAM+压缩SDI启动!
我也试了一下,对于im_的确在内存中要放两份。但是对于未压缩的img,并不像lxl1638在39楼所讲的,需要更多的内存,img和sdi所需的内存量是一样的,一样是16+32=48,可以载入32M的img或sdi。
作者: WANG6610    时间: 2006-3-17 07:46
标题: 成功实现RAM+压缩SDI启动!
fujianabc向您请教:
      1。如何把winimage挂载的NTFS格式的IMG塞满文件。
      2。如何把sdiloader.exe挂载的NTFS格式的SDI塞满文件。
       我向里面复制文件,还有很多空间,可它硬说磁盘已满。
                                              谢谢。。。。。
作者: Rinrin    时间: 2006-3-17 07:52
标题: 成功实现RAM+压缩SDI启动!
下面引用由wang66102006/03/17 07:46am 发表的内容:
fujianabc向您请教:
      1。如何把winimage挂载的NTFS格式的IMG塞满文件。
      2。如何把sdiloader.exe挂载的NTFS格式的SDI塞满文件。
       我向里面复制文件,还有很多空间,可它硬说磁盘已满。
...
2.可以采用Ghost32的方法
作者: wang6610    时间: 2006-3-17 07:57
标题: 成功实现RAM+压缩SDI启动!
下面引用由Rinrin2006/03/17 07:52am 发表的内容:
2.可以采用Ghost32的方法
谢谢。。。。。。。。。。
作者: wang6610    时间: 2006-3-17 08:34
标题: 成功实现RAM+压缩SDI启动!
同一个PE IS_比SD_更小。sdi更省内存!
作者: fujianabc    时间: 2006-3-17 10:21
标题: 成功实现RAM+压缩SDI启动!
下面引用由wang66102006/03/17 07:46am 发表的内容:
fujianabc向您请教:
      1。如何把winimage挂载的NTFS格式的IMG塞满文件。
      2。如何把sdiloader.exe挂载的NTFS格式的SDI塞满文件。
       我向里面复制文件,还有很多空间,可它硬说磁盘已满。
...
这是由于ntfs压缩速度比拷贝速度慢,磁盘已满时,压缩还未完成,等几秒钟多于空间会压出来的。
我是用的一个叫做killcopy的复制软件,它遇到空间暂时不够时,能够不断重复的尝试复制操作,直至成功,而不是像资源管理器那样停止复制。
作者: lxl1638    时间: 2006-3-17 11:29
标题: 成功实现RAM+压缩SDI启动!
1、先复制除SYSTEM32目录的其它文件和目录;
2、然后再复制SYSTEM32下的子目录;
3、最后再复制SYSTEM32目录下的文件,这里的小文件很多。
第三步复制文件时要先大后小,分批复制(不要一次性地把一个目录的文件全部复制),最好用ExamDiff.exe作目录比较,在其资源管理器中把文件排序,中途提示空间不足的话要等一会,或卸下映像后再挂上就有空间了。要确保I386目录下的全部文件都复制进去,不行的话就去砍程序目录了。
作者: Rinrin    时间: 2006-3-17 11:53
标题: 成功实现RAM+压缩SDI启动!
下面引用由lxl16382006/03/17 11:29am 发表的内容:
1、先复制除SYSTEM32目录的其它文件和目录;
2、然后再复制SYSTEM32下的子目录;
3、最后再复制SYSTEM32目录下的文件,这里的小文件很多。
第三步复制文件时要先大后小,分批复制(不要一次性地把一个目录的文件 ...
这个方法太复杂了
还是用Ghost32比较好
文件排列得更整齐
并且可以消除空闲区域的垃圾数据
作者: fujianabc    时间: 2006-3-17 13:08
标题: 成功实现RAM+压缩SDI启动!
下面引用由wang66102006/03/17 07:46am 发表的内容:
fujianabc向您请教:
      1。如何把winimage挂载的NTFS格式的IMG塞满文件。
      2。如何把sdiloader.exe挂载的NTFS格式的SDI塞满文件。
       我向里面复制文件,还有很多空间,可它硬说磁盘已满。
...
还有一个办法,这是911 cd里面原创sdi ramdisk启动时提出的压缩ntfs文件复制方法。
原文摘录如下:
copy the contents from PEBUID-Directory into the SDI Image
Use Robocopy because we expect that normal copy will fail on NTFS compressed volumes with disk full error.
I gave  robocopy.exe 3 retries (/R:3) with  4s (/W:4) delay to let NTFS compress which  results in free disk space.
robocopy.exe /MIR %PEBUILD%\ R:\ /MIN:150000 /R:3 /W:4
其中用到了微软Resource Kit Tools中的robocopy,这是一个功能很强的文件复制工具,下面贴的是win2003 Resource Kit Tools中的robocopy
[UploadFile=robocopy_1142572079.rar]
作者: lxl1638    时间: 2006-3-17 13:44
标题: 成功实现RAM+压缩SDI启动!
下了,其中一个Word文档很长,有30多页。
作者: fujianabc    时间: 2006-3-17 15:32
标题: 成功实现RAM+压缩SDI启动!
那个word文档仅做参考,57楼已经写明了,用类似命令:
robocopy.exe /MIR %PEBUILD%\ R:\ /MIN:150000 /R:3 /W:4
作者: wang6610    时间: 2006-3-17 18:49
标题: 成功实现RAM+压缩SDI启动!
谢谢各位老大!!!
作者: wang6610    时间: 2006-3-18 07:54
标题: 成功实现RAM+压缩SDI启动!
再让高手给诊断一下:
http://bbs.wuyou.net/cgi-bin/topic.cgi?forum=36&topic=420&show=0




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3