分享

把winxp装进内存 让内存做系统盘!

 读书人.摇篮 2012-11-11


今天在某启动盘制作论坛闲逛时突然发现一个叫firadisk的驱动,此驱动可以让系统识别grub引导程序用map指令在内存上映射的仿真磁盘(即isoimg等光盘及磁盘镜像文件)。而只有win98之前的系统才能支持grub的这个功能。

当时我两眼就发亮了~~~这是我梦寐以求的功能~~因为这样的话就可以先用grub将磁盘镜像载入内存后启动内存上的磁盘镜像上的系统。这样就成了romos。其实winpe就是差不多这样的原理。但是winpe太简单了,很多驱动都不能装。网上查了一下有用ntldr引导磁盘镜像做romos的,但是ntldr引导的镜像有大小限制,镜像体积不能超过约400m(不过貌似有破解的ntldr能支持大体积镜像)。

网上也有通过grub+firadisk成果启动romos的例子,但是不多。


废话不多,先看成果,待会放操作过程

wps_clip_image-10313.png

wps_clip_image-10630.png


机器内存4g32xp只能认3.25g,所以xp系统硬是被精简到了1.5g以内。。。

wps_clip_image-12422.png



这个firadisk就是xp所在的内存上的虚拟磁盘

2.jpg

5.jpg



系统盘测试,平均读取将近900m/s,随机存储时间=0ms。。。

3.jpg



系统盘测试2

4.jpg

内存当系统盘,感受我就不多说了,大家能体会到的。。。比现在最好的固态硬盘都要快好几倍以上。推荐大内存的tx可以试试,2g以下的就不用试了。。。3g以上的可以体验以下,唯一的缺点就是C盘不能保存,重启后就恢复原样,这样也好可以当影子系统,什么病毒和木马都不怕了。

今天晚了就不写下去了。如果大家有兴趣的话我改天写个详细的过程,有能力的同学可以先试试~~~

一 准备工作

1.Winimage:用于制作磁盘镜像

下载地址:http://ydsoft.//200910/WinImagePortable.rar

2.grub for dos:在内存上映射磁盘镜像以及引导内存系统

下载地址:http://ncu.dl./project/grub4dos/GRUB4DOS/grub4dos%200.4.4/grub4dos-0.4.4.zip(操作之前强烈建议对grub不熟悉的同学先熟悉一下grub(至少学会mapchainloader等常用指令))

安装grub for dosxp下将grldr.mbrgrldrmenu.lst三个文件拷贝到C盘根目录,boot.ini最后一行添加c:\grldr.mbr="Grub for DOS"

3.Firadisk驱动:识别grub映射的磁盘镜像

下载地址:http://www./grub4dos/FiraDisk/firadisk-driver-0.0.1.16.zip


二 制作系统磁盘镜像

1. 备份原来系统(如果安装新xp到非第一分区则略过,推荐安装到非第一分区,安装后不会引导到非第一分区的可以先学grub)

2. 安装新xp:可以用精简版的xp,也可以完全安装后自己精简,精简程度视自己的内存大小决定,差不多系统镜像载入内存后留个500m-1g足已。然后装好驱动和常用软件

3. 安装firadisk驱动:

在新安装的系统上添加新硬件

wps_clip_image-7925.png



手动安装

wps_clip_image-18528.png

添加scsiraid控制器

wps_clip_image-6570.png


从磁盘安装

wps_clip_image-6495.png

选择firadisk驱动所在的文件夹

wps_clip_image-27379.png

设备管理器里看到scsiraid控制器里的firadisk virtual disk enumerator后说明驱动安装成功

wps_clip_image-20688.png


4.打开注册表编辑器,进入HKEY-LOCAL-MACHINE\SYSTEM,删除其下的MountedDevices,否则内存系统盘无法挂载为C盘。

5.如果是将新xp安装到**硬盘的需要修改boot.ini里的multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" 这一行,确保partition(1)括号里面为1,这个很重要,因为系统磁盘镜像挂载到内存后在bios里会映射为第一个硬盘的第一个分区,如果此处不是1的话会出现无法引导的状况(当时我就在这边耗了很久,都快放弃了。。。),新xp安装到第一个分区的没有这个问题。

6. 备份新xp(安装到第一分区以外的不需要备份了):备份之前可以先测试一下firadisk驱动是否安装成功,方法是在menu.lst里添加

title winxp #显示标题 随便添

map --mem (hdx,y)/任意磁盘镜像路径 (hd32)  #此镜像为测试用,iso格式imgima格式均可

map --hook

chainloader (hdm,n)+1

启动后发现有新磁盘或新光驱的说明安装成功

7.还原或重启到原来操作系统(或进入winpe)

winimage新建磁盘镜像,选择自定义映像格式

wps_clip_image-24943.png

扇区总数按需分配(如新xp占用1g空间则设差不多3000000个扇区也就是1500000kb,这个大小就是内存系统上的C盘的总容量,所以留个500mb左右的空间比较合适),其余默认值。设置之后保持为imaimg格式,将新xp所在的硬盘上的所有文件直接拖进去就行了(用ghost之类备份的同学先用ghost镜像浏览器解压之后再拖进去),此处还可以设置磁盘卷标和设置文件是否隐藏,到此位置系统盘镜像以及制作完毕。(也可使用fat32系统格式,要比fat16更省空间)

用UltraISO也可制作磁盘镜像,此处省略

另外,grub的map指令是支持gzip压缩文件的,因此还可以用gzip将此镜像文件压缩,压缩过后体积约为原来的三分之一大小。推荐使用gzip压缩,gzip用法很简单,可以自学。

三 加载内存系统

1. 在记事本打开menu.lst添加以下内容:

title RomOS(winxp) #显示标题 随便添

find --set-root /romos.ima  #此命令为搜索磁盘镜像并设置为根目录,推荐将磁盘镜像放任意分区根目录

map --mem /romos.ima (hd0)  #映射为第一分区

map (hd0) (hd1)

map --hook

chainloader (hd0,0)/ntldr #如果无法启动可以改成chainloader (hd0,0)+1试试

2. 重启后在grub选择菜单里选RomOS(winxp)就行了,等待硬盘镜像加载到内存完毕后就能进入内存上的xp系统了。

以上就是我制作内存系统的全过程了,希望这篇文章对大家有用。有建议或者有问题的同学们可以在这里尽情的交流~~同样的原理还可以制作win7的内存系统,但是这个估计要8g内存才合适。。。而且只能装64位的,32位的没法认全8g内啊。。。如果真做成了win7的内存系统,不知道能不能看到磁盘评分7.9的奇观呢?

最后感谢这篇文章(http://os.yesky.com/371/11205371.shtml)的作者,大家有问题的还可以参考这篇文章,我就是结合这篇文章后才成功的引导进入内存系统的,感谢此文作者!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多