无忧启动论坛

标题: grub4dos 怎么快速生成一个巨大的RAMDISK [打印本页]

作者: mdyblog    时间: 2014-2-19 19:55
标题: grub4dos 怎么快速生成一个巨大的RAMDISK
grub4dos 怎么快速生成一个巨大的RAMDISK ?
现在内存很大、 很多闲置。 可以作为RAMDISK。
比如    2G的Ramdisk.   grub4dos 怎么快速生成一个巨大(2G 4G 6G)的RAMDISK ?
可以不格式化。
map  --mem  --top  (hd0,0)/2G.IMG  (hd1)
map  --rehook
这样很慢, 且浪费巨大的磁盘空间。



作者: 不点    时间: 2014-2-19 23:10
你可以用一个小的、无用的内存文件作为过渡,像这样:

map  --mem=-0x400000  --top  (md)+8  (hd1)
map  --rehook

2G 就是 0x400000 个扇区。--mem=负数,它的绝对值是一个正数,就表示为内存盘保留的最小扇区数。

如果 map 命令抱怨内存文件的几何参数不正确,你可以为 map 加上 --sectors-per-track=63 以及 --heads=255 选项强制指定几何参数,来消除抱怨。


作者: mdyblog    时间: 2014-2-20 09:36
本帖最后由 mdyblog 于 2014-2-20 09:39 编辑
不点 发表于 2014-2-19 23:10
你可以用一个小的、无用的内存文件作为过渡,像这样:

map  --mem=-0x400000  --top  (md)+8  (hd1)

谢谢!!  这个很好很好!!

我还碰到一个问题, 不知是G4D还是 WinVBlock 0.0.1.8.zip 的问题。
生成的盘不能3G 4G 。 2G可以。 到3G,分区格式化(一起的)时就出现PAGE错误,好蓝啊,北京的天什么时候这么蓝?。

有谁知道怎么 做个 4G 或更大的 内存盘,以利用XP,Win7-32不能认识的闲置内存?
作者: 不点    时间: 2014-2-20 10:35
grub4dos 的 map 支持很大的内存,有人验证过,至少支持 16G 的内存映像文件。grub4dos 目前在原则上支持 512G 的物理内存,而且这只是目前的限制,将来如果有需要,还可以继续上调内存支持的上限。

我怀疑问题与 WinVBlock 有关。

其实你能够证明 grub4dos 是否有 bug。你只需在 grub 环境查看内存扇区,如果发现虚拟盘的扇区数据不正确,那就说明 grub4dos 有 bug,否则,没有 bug。比如说,你可以在 grub 内部,用 grub4dos 的命令写入扇区到你的内存虚拟盘,写入到靠近末尾的扇区处,然后读出来。如果正确,那就说明没问题。否则,如果出现任何异常,那就证明 grub4dos 有 bug。


作者: mdyblog    时间: 2014-2-20 10:42
不点 发表于 2014-2-20 10:35
grub4dos 的 map 支持很大的内存,有人验证过,至少支持 16G 的内存映像文件。grub4dos 目前在原则上支持 5 ...


谢谢。

WinVBlock  必须要。 只好2G了。 目前2G内存盘也够。 只是对技术狂,有遗憾!!
作者: 不点    时间: 2014-2-20 10:47
顺便说说有些主板 BIOS 把内存搞成碎片,比如,你有 4G 的内存,但 BIOS 把它弄成不连续的几个 500M 左右的内存,导致你无法用 map --mem 加载 1G 的 IMG。

针对这种情况,用户有两种选择:

1、精简自己的 IMG,控制在 500M 以内,完成同样的任务。这还节约了内存,可谓两全其美。

2、增大物理内存到 8G。通常,位于 4G 以上的内存都是连续的。没有理由在 4G 以上制造不连续,除非这个 BIOS 厂家是恶意的攻击者。


作者: mdyblog    时间: 2014-2-20 10:51
不点 发表于 2014-2-20 10:47
顺便说说有些主板 BIOS 把内存搞成碎片,比如,你有 4G 的内存,但 BIOS 把它弄成不连续的几个 500M 左右的 ...

谢谢!
作者: fujianabc    时间: 2014-2-20 11:25
不点 发表于 2014-2-20 10:47
顺便说说有些主板 BIOS 把内存搞成碎片,比如,你有 4G 的内存,但 BIOS 把它弄成不连续的几个 500M 左右的 ...

4G以下内存断掉,大部分情况是核显占用了显存所导致的。
很多核显占用了500多M开始的一段内存
作者: shuini    时间: 2014-2-20 11:26
如果你的2G.IMG是一个空镜像,可以把它压缩或者做成稀疏文件,那样载入时间几乎可以忽略。
作者: mdyblog    时间: 2014-2-20 16:35
本帖最后由 mdyblog 于 2014-2-20 16:46 编辑
friend8179 发表于 2014-2-20 12:06
这个用Primo Ramdisk就可以搞定了

winvblock不支持高位吧,换firadisk试试


1: Primo Ramdisk 也必须 XP 支持才可以吧, 从XP那里那内存吧。 4G之上的内存XP都不认, 也不会告诉  Primo Ramdisk 来用吧。
     如果 Primo Ramdisk 支持 就好了。 再试试。

2: firadisk 的 扇区映射  不及  winvblock。

3 :  PAE  XP 4g补丁, 没试出来。  是不是需要标准的XP。我这都是GHOST-XP。
     没成功过。
     再试试。 这个正点。

作者: mdyblog    时间: 2014-2-20 16:44
shuini 发表于 2014-2-20 11:26
如果你的2G.IMG是一个空镜像,可以把它压缩或者做成稀疏文件,那样载入时间几乎可以忽略。

这个试过, 时间还是很长  40秒吧。
不点 大大 的方法快。  虽然后期处理脚本麻烦。 但还是值得的。
作者: 2012hongrui    时间: 2014-2-21 18:20
以前未使用XP4G时用过这个方法,刚才测试制作了一个约2.5G的hdd.gz,要用firadisk驱动,winvblock不能识别高位内存。hdd.gz文件在(hd0,4),就是windows中看到的D盘。

启动xp之前grub4dos用上这句:

map --mem --top (hd0,4)/hdd.gz (hd1)

进入系统后就可以看到约2.5G,fat格式的仿真硬盘。(如果说用fat32,好像每次进入桌面有提示)

文件可以用winimage这个软件修改大小,具体大小请自行修改,可以调整到高位内存刚好占满的大小,这样高位内存一点也不浪费了。

提供这个2.5G的文件,它其实是个软件镜像,没有mbr,但是可以当作硬盘镜像来加载到内存。

个人感觉还是primo驱动方便些。XP64G也是个不错的选择(要用2003的usb驱动来替换,否则摄像头没法用,硬盘要用AHCI)。


hdd.gz

825 Bytes, 下载次数: 13, 下载积分: 无忧币 -2


作者: mdyblog    时间: 2014-2-21 23:59
2012hongrui 发表于 2014-2-21 18:20
以前未使用XP4G时用过这个方法,刚才测试制作了一个约2.5G的hdd.gz,要用firadisk驱动,winvblock不能识别 ...

》》要用2003的usb驱动来替换,否则摄像头没法用

能不能 传一个 2003的usb驱动? 先谢谢了!!
作者: svip369    时间: 2014-2-22 23:29
不错,认真学习一下。。
作者: xiuyueyuan2013    时间: 2014-3-4 01:24
创建磁盘镜像的时候,不创建连续镜像文件就可以了,一个2G的镜像文件,大概只占几M的磁盘空间,载入时间也就几秒




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