是否可以将存储磁盘(例如USB驱动器)用作RAM?


23

我的主板(HP Pavilion s3000y)最大仅支持2GB RAM。这意味着我只能为正在运行的VM分配1GB,并且使用大量RAM的应用程序运行缓慢(例如游戏和Visual Studio)。

是否可以将USB驱动器之类的存储磁盘用作RAM?

否则,VirtualBox可以将驱动器用作VM的RAM吗?


5
不,不。您需要禁用所有可能的功能(服务,预取,索引等)以释放RAM。使用XP可以使您的生活更轻松。
mtone 2012年

3
@kobaltz RAM磁盘占用可用内存作为驱动器,这与OP要求的相反。我认为“磁盘RAM”(而不是“ RAM磁盘”)实用程序是不可能的。并补充一下为什么virtualbox无法做到这一点:虚拟化是系统的网关,而不是模拟器。
mtone 2012年

3
应该考虑考虑再买一块主板。。。
surfasb 2012年

1
坦白说,Nate,此系统不是为虚拟化而设计的,更像是一台厨房电脑,如果您需要此系统来工作或学习,那么最好还是制造或购买400美元的“普通”电脑。否则,我建议使用双重引导而不是虚拟化!和@surfasb:在hp
slimline

@ s4uadmin:这带来了一个好处。即使您插入功能更强大的主板,该电源也无法承受。
surfasb 2012年

Answers:


23

Windows Vista和7支持ReadyBoost,它将使用快速USB驱动器作为SuperFetch的缓存。这使SF可以在RAM有限的系统上更好地工作。这可以帮助提高文件I / O操作的响应速度,因为闪存驱动器在4K随机读取/写入时比HDD快得多。

更好的是,获得一个SSD驱动器。SSD上的页面文件确实非常快,并且可以显着提高分页操作速度,但绝不能替代更多RAM。

顺便说一句,您是否尝试过安装比主板建议的容量更大的RAM?如果升级到最新的BIOS版本,则可能可以使用更大的芯片,例如2x2GB或4x1GB(不确定您有多少个RAM插槽)。如果有可用的芯片,至少尝试使用更大的芯片应该不会有什么坏处。

另外,应将分配给虚拟机的RAM减少到运行VM所需的数量。XP guest虚拟机最多可以在256MB或384MB RAM中运行,具体取决于您使用的目的。


3
是否众所周知ReadyBoost在具有2GB或更多RAM的计算机上根本没有帮助?而且,SSD是否不够昂贵,以至于他只花不多多少钱就可以买一台具有4GB RAM的新计算机,总体而言这会更好吗?
Graphth 2012年

1
显然, -有人不知道并尝试过。猜猜是什么,它确实有所帮助。
MSalters 2012年

ReadyBoost在边缘情况下很有帮助。正如我在上面的编辑中指出的那样,它仅由SuperFetch使用;它与加快页面文件IO无关。如果您的RAM对于您的工作负载而言是“微不足道的”,并且如果您的工作负载足以使SuperFetch能够为您提供帮助,则SF可以加快文件IO甚至程序加载的速度(这是分页而不是通过分页文件)。如果您有足够的RAM,这将无法帮助b / c SF在RAM中正常运行;如果您确实缺少RAM,那么即使将所有SF从RAM中移出也无济于事。
Jamie Hanrahan

17

使用大量内存的应用程序会使系统变慢的原因是,这迫使系统使用存储设备。您要执行的操作是系统已在执行的操作以及您不满意的原因。不幸的是,唯一的解决方案是更改您的工作负载,以便它需要更少的内存或增加更多的内存。


10

即使您要这样做,也不建议这样做。USB驱动器/硬盘驱动器非常慢。考虑一下您的USB驱动器。它将以最大60MBps的速率传输。根据您的其他问题,计算机中的RAM可以在4200MBps到5333MBps的范围内运行!

这就是为什么当您的计算机内存不足时,它将使用Pagefile将内存分配为虚拟内存。您的硬盘驱动器指示灯会发疯,并且计算机会大大降低速度。它用尽了物理内存,并且为了不崩溃,它将使用您的硬盘驱动器作为虚拟内存。只需考虑一下此时的计算机运行速度,并考虑一下如果VM始终使用此RamDisk(请参阅下文)或虚拟内存,则其运行将有多可怕。

在此处输入图片说明


4

是的,名称是“虚拟内存”或“交换”;它已在个人计算机上正常使用了很长时间(最早于1960年代发现,自1990年代以来,所有主流OS均已将其安装并默认打开它们)。您可能可以通过调整虚拟内存的大小来略微提高性能(如何更改Vista),尽管这可能不会显着提高性能。

通常,虚拟内存仅在计算机无法以其他方式处理内存负载的情况下(例如,由于OS杀死了OOM而导致系统开始出现问题的情况)才能提高性能。


1

首先,您确定您的主板限制为2GB吗?!我以为有一天我看到了一个使用DDR2甚至是DDR3风格RAM的Pavilion。如果您的系统可以使用DDR2或更高级别的DDR2,则这意味着很可能只用较大的RAM棒填充仅2个RAM插槽。您可能可以使用两个2GB的记忆棒,从而使您可以升级到4GB。

但是,这里有BIOS。而且我简直不敢相信HP没有可以刷新的BIOS更新。(如果您在HP网站上查找您的特定型号,这将是一个巨大的线索。)但是,即使没有BIOS更新,您至少也应该能够看到3Gig以上的RAM。您只需要刷新您的BIOS即可访问整个4Gig。再一次,假设您甚至可以安装DDR2或更高版本。

但是,如果您对DDR1感到困惑,那就算了。我也可能选择双引导而不是使用VM。我知道在尝试在操作系统之间共享数据时尤其糟糕,特别是在尝试新发行版时。但是话又说回来,几乎任何Linux发行版都可以本地处理NTFS分区(提示,提示)。


0

没有。USB驱动器之类的存储设备可以帮助OS将数据从OS存储/提取到RAM。它只是有助于执行此类分页/交换操作。


0

您可以使用备用内存管理器:http : //www.techsupportalert.com/best-free-memory-optimizer.htm。内存管理器可以压缩使用过的内存,并释放一些内存。在Linux中,有compcache和/或zram。但是我不知道如何在Windows上工作。可能是备用内存管理器没有使用这种压缩技术。该程序在此处使用压缩:http : //www.wincarepro.com/index.htm。您可以使用compcache为Windows创建一个ram磁盘(http://www.vflare.org/2009/03/ram-is-not-enough-memory-compression.html)。

编辑:这是另一个程序:http : //www.windows7download.com/win7-memory-improve-master/smdggjpk.html,但看起来和这个http://www.wincarepro.com完全一样?我不知道这是严重的吗?


RAM磁盘在几乎所有情况下以及在每种“有限RAM”情况下都是一个可怕的主意。附加的“内存管理器”几乎总是弊大于利。它们的工作原理是空闲RAM很好。实际上,可用RAM是浪费的RAM。
Jamie Hanrahan

@JamieHanrahan:我是从Memory-Swap的角度编写RamDisk的。另外,它可以被压缩:vflare.org/2009/03/ram-is-not-enough-memory-compression.html
Gigamegs 2015年

我不确定“从内存交换的意义上”是什么意思,但是如果您的意思是将页面文件放在RAM磁盘上呢?那甚至没有错。它将增加页面错误率。并非所有其他故障都将解决到RAM磁盘上(从统计学上讲,大多数都转到映射文件)。是的,是的,RAM磁盘上的PF将比硬盘驱动器快-但不将RAM提交到RAM磁盘,因此根本不会引起这些其他故障,甚至会更快。
Jamie Hanrahan 2015年

@JamieHanrahan:我不确定你是什么问题。您可以阅读有关compcache的文章。它使用压缩的ram磁盘进行交换。在某些情况下,它会有所帮助。
Gigamegs 2015年

我确实读过这篇文章。设计特定的工作负载很容易,在这些工作中它们似乎有所帮助。即使是一个简单的“内存优化器”(从RAM中尽可能多地退出),也会帮助您启动下一个程序的启动时间。但是这样做会破坏您正在运行的所有其他设备(包括许多操作系统)的性能。要显示全面的性能提升而没有不利之处,要困难得多。
Jamie Hanrahan 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.