无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 16771|回复: 53

[分享]用Primo制作的win7x64单镜像动态扩容和释放内存系统

  [复制链接]
发表于 2014-3-14 15:29:32 | 显示全部楼层 |阅读模式
本帖最后由 2012hongrui 于 2014-3-19 16:39 编辑

最近本讨论区有关ramos有点火爆,基于Primo驱动的Win7单镜像内存系统横空出世,我也来凑个热闹,介绍一个基于primo驱动的单镜像动态扩容和释放的win7x64内存系统。

废话少说,进入正题:

一、制作Win7x64的VHD系统

大家都会做了,安装primo驱动,此处省略一千字。

二、制作win7x64单镜像动态扩容和释放内存系统

下面以我机子6G内存进行介绍:

1.我的VHD系统文件名是WIN7x64.VHD,大小4G.VHD系统设置一个4608M(就是4.5G)的动态内存盘R:,关联镜像F:\RAMOS\WIN7x64\C.VDF,勾选动态内存分配,紧凑模式,加载和保存,注意是智能镜像。关机生成F:\RAMOS\WIN7x64\C.VDF

2.重启还是进入VHD系统,检查是否生成了F:\RAMOS\WIN7x64\C.VDF,打开任务管理器,看pf大小,的确是动态分配内存。把加载和保存修改为仅加载。关机重启。

3.重启进入PE系统,把原来的VHD系统的文件win7x64.vhd复制一个,名称为“win7x64 - 副本.vhd”。(这是和我以前制作2003不一样的地方),把C.VDF复制一个,以后最小化智能镜像要用。

4.重启进入VHD系统,用DiskGenius.exe分区克隆功能把“win7x64 - 副本.vhd”的内容复制到内存盘R:中。复制完后,可以把“win7x64 - 副本.vhd”删除了,它没有用了。

(1)修改BCD
(2)修改R盘中的注册表

大家都知道改哪里,我就不多说了。

手动保存R盘为完全镜像F:\RAMOS\WIN7x64\B.VDF,再把B.VDF复制一个为F:\RAMOS\WIN7x64\BOOT.VDF,保证了BOOT.VDF连续,把B.VDF删了。

这个B.VDF能不能作为引导盘我没有试过,制作时按习惯随手就删除了。

把primo中设置中的仅加载改成“加载和保存”,删除F:\RAMOS\WIN7x64\C.VDF,关机重新生成智能镜像F:\RAMOS\WIN7x64\C.VDF。

这样制作就能保证智能镜像和完全镜像的mbr和pbr完全一致。

重启,用如下菜单启动进入动态扩容各释放系统:

title Primo RAMOS WIN7x64
find --set-root --devices=h /RAMOS/WIN7x64/BOOT.VDF
map /RAMOS/WIN7x64/BOOT.VDF (hd0)
map (hd0) (hd1)
map --hook
rootnoverify (hd0,0)
chainloader (hd0,0)/bootmgr

如果说用了软件激活的,请把最后一句中的bootmgr改成你软激活文件名。

进入系统后打开任务管理器,看到的PF只有4.2G左右,刚好是智能镜像C.VDF的3.5G+初始PF0.7G的大小。

如果说用的完全镜像,PF应该是4.5G+初始PF0.7G=5.2G,我的只有6G内存,可用的就很可怜了。

具体的指标请自行测试,我不再多说了。

优点:

1.系统C盘动态扩容和释放
2.加载速度快一些,只加载3.5G的智能镜像。省10秒钟

缺点:1.要用两个镜像,浪费空间。
2.制作过程坑爹。

只要一个镜像文件能不能做出来我还没有想过,以后有时间再想吧!

试验用以前2012wuzhong的方法,把4.5g完全镜像BOOT.VDF的mbr和pbr提取出来,写入到用dg建立的3.5g的vhd中,一样可以引导成功。
如果有32g内存,制作20g动态系统盘,实际有效文件3.5g,完全镜像和智能镜像之和为7g,占用7g硬盘空间,如果是一个完全镜像的系统盘,占用20g空间。实在奇怪,动态系统反而占用空间还小些。



补充:

缩小启动盘BOOT.VDF的方法:

启动盘BOOT.VDF是个4.5G的完全镜像,太大了,可以用如下方式缩小到3.5G

随便进入一个系统,PE也可以。
1.用DiskGenius.exe建一个立即分配所有空间的3.5G的VHD文件F:\RAMOS\WIN7x64\BOOT.VHD,注意是VHD文件,不是VDF文件。
大小能装下所有的有效文件,我制作的所有文件总体积在3.48至3.49G,智能镜像3.5G,因此建一个3.5G刚好合适。
分区、格式化BOOT.VHD成ntfs压缩

2.用DiskGenius.exe打开启动用的完全镜像F:\RAMOS\WIN7x64\BOOT.VDF,用分区克隆功能把F:\RAMOS\WIN7x64\BOOT.VDF的内容复制到
F:\RAMOS\WIN7x64\BOOT.VHD文件中,只要BOOT.VHD大小控制得好,可以完全复制进去的。

3.关闭DiskGenius.exe,用BOOTICE.EXE打开完全镜像F:\RAMOS\WIN7x64\BOOT.VDF,提取主引导记录mbr和分区引导记录pbr,分别保存为mbr.bin和pbr.bin,数值就用软件的默认值。

4.用BOOTICE.EXE打开VHD文件F:\RAMOS\WIN7x64\BOOT.VHD,分别恢复mbr.bin和pbr.bin到BOOT.VHD,注意“保留磁盘签名和分区表不变”前面的勾要去掉,这一点很重要。关闭软件

5.再次用DiskGenius.exe打开BOOT.VHD,选择它,会有错误提示,不要修复,点一下,能看到文件就算成功。关了软件。

6.由于DiskGenius.exe建立的VHD文件多半是不连续的,可以复制一个替换掉原来的BOOT.VHD,这个BOOT.VHD用来代替BOOT.VDF,它只有3.5G,比原来的BOOT.VDF小了1G,功能和作用完全一样。

最近grldr有支持不连续的功能仿真,大家可以试试。

重启,用VHD文件BOOT.VHD来启动,同样可以正常进入系统,原来那个BOOT.VDF可以删除了。启动盘的内容还可以精简,启动盘还可以做的更小。nt5系统用这个办法试过,只要更改mbr就行了,不用更改pbr,否则问题多多。


发表于 2014-3-14 17:44:33 | 显示全部楼层
本帖最后由 a19715 于 2014-3-14 17:49 编辑

楼主 前几天看到你的想法我试了下,但是动态释放感觉不是那么明显呢,关于单镜像请看这里http://bbs.wuyou.net/forum.php?m ... amp;highlight=Primo,推荐你去试试。正准备试试,IO模式,是否可以用IO镜像模式?
回复

使用道具 举报

发表于 2014-3-14 17:52:37 | 显示全部楼层
你的想法对我帮助很大
回复

使用道具 举报

发表于 2014-3-14 20:04:47 | 显示全部楼层
除VHD母系统外,包括中间步骤,一共要生成6个镜像/VHD。制作过程确实有些坑爹啊。希望楼主能想办法减少生成文件的数量。

另外:
3.重启进入PE系统,把原来的VHD系统的文件win7x64.vhd复制一个,名称为“win7x64 - 副本.vhd”。
4.重启进入VHD系统,用DiskGenius.exe分区克隆功能把“win7x64 - 副本.vhd”的内容复制到内存盘R:中。
这里为何不可以直接在PE中克隆原系统到内存盘中?(只要可以挂载内存盘)
回复

使用道具 举报

 楼主| 发表于 2014-3-14 20:22:59 来自手机 | 显示全部楼层
本帖最后由 2012hongrui 于 2014-3-14 20:40 编辑
2013_top398 发表于 2014-3-14 20:04
除VHD母系统外,包括中间步骤,一共要生成6个镜像/VHD。制作过程确实有些坑爹啊。希望楼主能想办法减少生成 ...


办法是人想的,核心是保证智能镜像和完全镜像mbr和pbr一样,其他的步骤坛友们可以随便改。目前步骤可以成功,不过也太坑爹了,大家多想想怎么减少步骤。
刚才想到一个办法,可以在7pe中安装primo驱动手动加载最初最小的那个C.VDF形成的内存盘,再dg复制原VHD系统文件到这个内存盘,生成文件确实少很多。不过要实际操作成功了才算数。
这个7pe其实代替了最初VHD的功能。
回复

使用道具 举报

发表于 2014-3-14 20:41:19 | 显示全部楼层
2012hongrui 发表于 2014-3-14 20:22
办法是人想的,核心是保证智能镜像和完全镜像mbr和pbr一样,其他的步骤坛友们可以随便改。目前步骤可以 ...

嗯,希望楼主试验成功。我是暂时不搞试验了。其实也不一定用PE,可以是另一个正常系统。
回复

使用道具 举报

发表于 2014-3-14 20:43:17 | 显示全部楼层
WIN7x64.VHD,大小4G.不知用哪个精简版?可有链接?
回复

使用道具 举报

发表于 2014-3-14 20:47:28 | 显示全部楼层
wanghh 发表于 2014-3-14 20:43
WIN7x64.VHD,大小4G.不知用哪个精简版?可有链接?

据我用 twm000 1.4G Win7-64 GHO镜像实测,安装后NTFS不压缩占用5G,压缩占用2.6G。就不知楼主用的是哪个精简版本了。
回复

使用道具 举报

 楼主| 发表于 2014-3-14 20:55:23 来自手机 | 显示全部楼层
不知道在哪里下的了,gho文件1.18g,是x64的精简旗舰版,我的机子驱动安好裸系统ntfs压缩只有2.7g,由于有3.12g的高低位内存分界限,用firadisk驱动做不了大镜像,所以兴趣转移到vsuite和primo上了。
回复

使用道具 举报

发表于 2014-3-14 20:59:24 | 显示全部楼层
2012hongrui 发表于 2014-3-14 20:55
不知道在哪里下的了,gho文件1.18g,是x64的精简旗舰版,我的机子驱动安好裸系统ntfs压缩只有2.7g,由于有3 ...

1.18G的还是有点兴趣,用来做试验是很好的原料,就不知道功能齐全否?GHO里面应该多少会有些标识的,比较电脑属性什么的。
回复

使用道具 举报

发表于 2014-3-15 21:37:02 | 显示全部楼层
怎么才能真正单镜像?g4d引导要不要改,如果把primo设置的镜像文件目录和g4d指到同一个文件,不知道是什么后果,会不会蓝屏,
windows本身的休眠功能是不是相当于某种单镜像启动呢,这些都是猜想。
谢谢大侠的辛苦指点。
回复

使用道具 举报

发表于 2014-3-15 22:31:03 | 显示全部楼层
”如果把primo设置的镜像文件目录和g4d指到同一个文件“ —— 完全可以,你没有仔细看之前的贴子。

”windows本身的休眠功能是不是相当于某种单镜像启动呢“ —— 从实用角度上说是某种”单镜像“,但原理和 Vsuite/Primo 镜像完全不同。应该说 MS 自家的休眠功能本就是系统的一个组成部分,是最稳定的。
回复

使用道具 举报

发表于 2014-3-16 08:17:38 | 显示全部楼层
太完美_Ghost_Win7_SP1_x64_lite_旗舰精简版
回复

使用道具 举报

发表于 2014-3-16 20:32:22 | 显示全部楼层
2012hongrui 发表于 2014-3-14 20:22
办法是人想的,核心是保证智能镜像和完全镜像mbr和pbr一样,其他的步骤坛友们可以随便改。目前步骤可以 ...

话说这些个VDF文件镜像真有“有”或者“需要” “mbr和pbr”么?制作vsuite的2003时好像直接在PE里把GHO文件用GHO文件浏览器里提取到VDF里也成啊,然后应该用什么方式来查看他的PBR和MBR呢?我试着用BOOTICE来看,MBR一律显示无,PBR一律显示为BOOTMGR呢?望大侠们解个惑科个普,谢谢
回复

使用道具 举报

发表于 2014-3-18 10:04:02 | 显示全部楼层
a19715 发表于 2014-3-14 17:44
楼主 前几天看到你的想法我试了下,但是动态释放感觉不是那么明显呢,关于单镜像请看这里http://bbs.wuyou. ...

屌炸天了!!!!!!!!!!!!!!我的瓶颈也在硬盘。还有在CPU
回复

使用道具 举报

发表于 2014-9-22 20:46:22 | 显示全部楼层
谢谢楼主的教程,我的win7 32位制作成功。只是每一次启动,都会先进入错误修正页面,然后选择“正常启动”后,又能正常进入系统。请楼主或各位高人指教!再一次感谢!
回复

使用道具 举报

发表于 2014-9-22 23:26:20 | 显示全部楼层
             内存系统这么火,我都还没搞过一次。怎么感觉搞技术时间越来越不够了。是不是技术无用了。
回复

使用道具 举报

发表于 2014-10-8 20:37:36 | 显示全部楼层
16楼的问题解决,感谢hongrui的帮助,问题解决。用ultraedit修改bootstat文件,将第一行第九个字节改为00(由于我用的prosen版,无法在高级系统设置界面将启动和故障恢复时间调整为0),只是调试界面还是要显示一下。
回复

使用道具 举报

 楼主| 发表于 2014-10-8 21:15:38 | 显示全部楼层
2012ccharles 发表于 2014-9-22 20:46
谢谢楼主的教程,我的win7 32位制作成功。只是每一次启动,都会先进入错误修正页面,然后选择“正常启动” ...

我的方法很传统,如下图:
不过如果是默认进入修复就完蛋了,设置为0,连选择的时间都没有,镜像报废,只好用备份的一个!
设置.jpg
回复

使用道具 举报

发表于 2014-10-9 15:46:32 | 显示全部楼层
16楼、18楼的问题彻底解决,用ultraedit修改bootstat文件,将第一行第八、第九个字节均改为00,再也不显示调试页面了。需先修改bootstat文件,再做镜像。
回复

使用道具 举报

发表于 2014-11-3 18:46:23 | 显示全部楼层
谢谢你的教程,我的笔记本上win7 32位成功。现在开始做64位win 7,请教:R盘(内存盘中)的BCD该如何怎么设置?谢谢!!
回复

使用道具 举报

 楼主| 发表于 2014-11-3 20:42:17 | 显示全部楼层
2012ccharles 发表于 2014-11-3 18:46
谢谢你的教程,我的笔记本上win7 32位成功。现在开始做64位win 7,请教:R盘(内存盘中)的BCD该如何怎么设 ...

修改如下:
bootice修改.jpg
回复

使用道具 举报

发表于 2014-11-4 20:52:30 | 显示全部楼层
感谢Hongrui兄弟的快速回复和帮助!谢谢!
回复

使用道具 举报

发表于 2015-4-28 15:39:40 | 显示全部楼层
这个系统不错,也容易成功,但问题是保存,无法保存,手动也不行.请大神们研究下!!
回复

使用道具 举报

发表于 2015-4-29 20:52:50 来自手机 | 显示全部楼层
不错,支持下
回复

使用道具 举报

发表于 2015-4-30 11:17:41 | 显示全部楼层
研究后发现,热备份无法,找不到原因
回复

使用道具 举报

发表于 2015-6-9 23:55:19 | 显示全部楼层
回复

使用道具 举报

发表于 2016-2-2 18:37:42 | 显示全部楼层
这个帖子发得早。看了,不那么清楚--。写是写得很清楚,只是我对智能扩容动态这些名词,不理解,所以,比较难,想试试……
回复

使用道具 举报

发表于 2016-2-3 10:11:43 | 显示全部楼层
3.关闭DiskGenius.exe,用BOOTICE.EXE打开完全镜像F:\RAMOS\WIN7x64\BOOT.VDF,提取主引导记录mbr和分区引导记录pbr,分别保存为mbr.bin和pbr.bin,数值就用软件的默认值。

4.用BOOTICE.EXE打开VHD文件F:\RAMOS\WIN7x64\BOOT.VHD,分别恢复mbr.bin和pbr.bin到BOOT.VHD,注意“保留磁盘签名和分区表不变”前面的勾要去掉,这一点很重要。关闭软件

这里的操作,我不行啊……楼主:
bootice  打不开vdf类型的镜像。所以--弄不了mbr.bin..pbr.bin   我没办法。后来进入刚才制作的系统。备份了C.VDF的两个mbr.bin,pbr.bin  用这两个来恢复到BOOT.VHD...可是出错……希望楼主帮我一下……
回复

使用道具 举报

发表于 2016-2-3 10:14:44 | 显示全部楼层
为了动态释放内存,才那么辛苦地弄……楼主啊………………。出来指点指点吧…………
我也百度了bootice的用法…………找不到……因为没有人用它对boot.vdf进行过你那样的备份。另外,我也打不开vdf那个镜像……。您是怎么弄的?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 03:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表