如何利用RAMDISK把XP检测不出的内存划出来?

2024-12-01 00:43:52
推荐回答(4个)
回答1:

使用gavotte 的 ramdisk
别使用 微软 的 SuperSpeedRamDisk-v9.0.3.0
原因是: gavotte 个人做的(lyh728加了界面)不需要注册
不需要安装,直接运行程序包中的ram4g.reg 文件,将RAMDisk作为
一个驱动安装到windows内核(成功后在设备管理里面可以看到RAMDisk设备)

而微软的 9.0 需要出钱注册,否则就是一个盗版应用程序

注意:应用程序跟内核驱动在启动过程的顺序以及差异

就以 将虚拟内存 pagefile.sys 放到 RAMDisk为例
windows启动的时候先加载内核,然后install 驱动模块
包括 SATA 硬盘、RAMDisk;完了之后加载个人设置(包括虚拟内存)
然后才启动应用程序
如果是RAMDisk是个应用程序,那么就会出现加载个人虚拟内存失败
(因为这个时候还没有运行应用程序,还没有创建RAMDisk)
从而生成一个让你莫名其妙的缺省虚拟内存(一般是在系统盘如C盘,
大小为物理内存的1.5倍?)

内核与应用程序差异:
内核可以看到全部物理内存(在32位系统上是4G,由于部分高地址预留给
显卡、网卡等外设,导致windows只能管理3G多)不过将win32 物理地址扩展
开启后,内核可以访问4G,而驱动是在内核层,所以可以将用不上的内存
全部挖出来(请放心能挖出来,网上有能否挖出的讨论,
不清楚linux/win 内核与应用差异的人总认为win32管理不到4G内存)

gavotte 是个职业高手就在于,他将windows管理不到的物理内存优先挖出来分配给你设置的RAMDisk,例如4G内存,win32只认出3.25G,如果用gavotte
的RAMDisk 配置0.5G,会从余下0.75G挖出0.5G,当然,你不会这样配置

分享一下我的配置:
物理内存 2*2G = 4G双通道,2G配置为RAMDISK,2G做内存
虚拟内存1G 放到 RAMDisk,RAMDisk剩下1G做系统TEMP以及下载程序
在线程序的临时目录

验证有没有将windows看不到的0.75G用到
不要去 我的电脑->属性 看,没有用的

直接看资源管理器 内存项: 使用内存/总内存(windows认出内存+虚拟)
以我上面的为例,我的值为 1.6G/4.25G

使用内存 1.6G的来历: 2G的RAMDisk 从windows看不到的物理内存
挖出0.75G还不够,还需要从WIN32识别的3.25G中使用1.25G
这个使用了1.25加上WIN启动后本身需要0.35G 就成了1.6G

总内存 4.25G的来历: win32识别的3.25G + 1G的虚拟内存

RAMDisk 从物理内存挖出的2G内存又有1G以虚拟内存的形式画到总内存
很绕:(

回答2:

是不是RAMDISK的版本问题?另外我以前看过杂志介绍过检测不出的那1G划成虚拟盘和系统可以利用的3G内存WINDOWS读写速度是不同的,那1G要比3G慢挺多

回答3:

xp默认无法识别4g内存,你需要修改启动参数才可以识别大容量内存。
http://baike.baidu.com/view/151009.html

回答4:

我也是32位xp系统的,系统默认检测出的内存是3.43G,现在分了1G来做虚拟磁盘,要确定成不成功你可以在“任务管理器”里面看到:如你划分了1G来做虚拟磁盘,但“任务管理器”的内存使用量却只有600多M,那就是成功了。

要试情况而定,我的系统被隐藏的内存是510M,系统加载占用内存是176M,所以“任务管理器”显示的占用内存是510M+176M=686M。

如果失败了,那么你分多少G做虚拟磁盘内存就占用多少G。

你去百度搜索下:“RamDisk”,下新浪那个,这个可以,傻瓜式的操作。

如果需要详细图文解说,在百度搜索下这个:“RAMDISK 虚拟内存硬盘设置ntfs”

- -,每次发地址百度都和谐掉,给名字你自己搜索好了。