如何确定 RAMDisk 是否有用以及应该在它上面放什么?

如何确定 RAMDisk 是否有用以及应该在它上面放什么?

RAMDisk 需要多少 RAM,如何确定分配多少?另外,哪些程序适合放在 RAMDisk 上,因为机器关闭时内容会丢失?我考虑将一些 Microsoft Office 产品放在 RAMDisk 上,例如 Word,因为用户总是选择文档的保存位置。我听说 Windows 7 上的 RAMDisk 已经过时了,因为超级获取它能起作用吗?就这么简单吗?

答案1

(前言:这篇文章是从性能角度撰写的。Ultrasawblade 提出了一个很好的观点,即使用 RAM 磁盘来防止文件出于安全原因被写入磁盘,而这篇文章并不适用于这些情况。)

就是这么简单,在 Windows XP 之前一直如此。Windows 7 中完全不需要 RAM 磁盘,Windows XP/Vista 中也几乎不需要(这些系统没有可预取数据的 SuperFetch,但有磁盘缓存):

在此处输入图片描述

待机内存(深蓝色条)就是这个磁盘缓存。Windows 会自动管理它,以便它尽可能多地填充 RAM,而不会造成问题。当应用程序需要内存时,它会动态收缩,而当应用程序不需要内存时,它会增长。

多年来,每个主流操作系统都具有磁盘缓存功能。SuperFetch 唯一真正新颖的功能是它可以提前猜测您可能需要哪些块,并在您使用它们之前将它们复制到磁盘缓存中。

为了了解磁盘缓存的有效性,在 72 小时内,我桌面上的应用程序请求了大约 5TB 的数据;然而,97.5%其中有 32GB 的磁盘缓存——这意味着实际上只有 160GB 的数据是从磁盘读取的。(注意,上面的图片不是来自我的桌面)

绝对有决不我可以手动选择 32GB 的数据,并让它覆盖系统上所有应用程序(包括内核和服务)请求的 97.5% 的数据。


RAM 磁盘的唯一好处是,您可以提前选择要加载哪些文件;您可以将 Office 加载到它上面,然后 Office 加载速度会非常快。这就是 RAM 磁盘“更快”的最常见欺骗性之处。

然而,这样做的成本非常高。将所有 Office 加载到 RAM 磁盘上会浪费大量内存:许多文件与 Office 一起安装,但在正常使用中从未使用过(模板、帮助文件、默认主题以外的主题等)。这些文件现在浪费了宝贵的内存,这些内存本来可以用来缓存您经常使用。甚至是文件的一部分。使用 RAM 磁盘,无法缓存 Windows 事件日志或主 ntfs 文件表之类的内容。在正常情况下,这两者都每秒可以使用数百次。

磁盘缓存非常强大,你甚至无法在 Windows 中将其关闭;我真心希望你能关闭它,这样我就可以向人们展示如果他们用 RAM 磁盘替换磁盘缓存会是什么样子。

答案2

  • 我遇到的大多数 RAMDisk 软件都允许您分配任意数量的 RAM。因此,您分配的数量取决于您的需求以及您想要在其中放置的内容。

  • RAM 磁盘将加快文件访问速度。对于可执行文件,通常的情况是它们被加载,然后不再被访问。将程序放在那里可能不会有太多好处,除了初始启动时间,除非您的程序有很多 .DLL 总是被切换进出 - 典型的 PC 内存在 4GB 以上范围内,这可能不值得担心。将程序使用的文件放在那里可能会看到速度有所提高。

  • SuperFetch 会预加载您经常使用的程序部分,以便使程序启动更快。如果您尝试使用 RAMDisk 使程序启动更快,我相信 SuperFetch 一旦了解了您经常使用的内容,最终就会做得很好。请注意,RAM 磁盘是易失性的,每次启动时您都必须重新复制文件。

  • Windows 会将程序未使用的文件缓存在 RAM 中。尝试使用 RAM 磁盘自己执行此操作可能不会带来太大改进,除非您 A) 拥有一个重复读写文件的特定程序,B) 不需要此文件存在于磁盘上,并且 C) 无法以任何其他方式重新配置该程序。因此,让旧程序运行得更好可能有点像“黑客行为”,尽管我想不出一个具体的例子。请注意,使用 RAM 磁盘会减少系统和其他程序可用的 RAM,因此您可能在用 RAM“拆东墙补西墙”。

  • RAM 磁盘的一个好用途是告诉程序在那里写入数据,以确保数据永远不会接触磁盘。如果对安全性或隐私性极为担忧,则将程序设置为使用 RAM 驱动器上的临时目录可使数据远离磁盘。

答案3

@ultrasawblade 和 @darthandroid 的说法是正确的。但是,我想进一步简化。RAM 磁盘的最佳用途是保存经常访问的文件 - 尤其是写入。Visual Studio、Adobe Creative Suites(临时文件位置)和游戏等应用程序可以从 RAM 磁盘中受益匪浅。

至于 SuperFetch,它并不是 RAM 磁盘的替代品。SuperFetch 使用一种算法将文件放入其缓存中。SuperFetch 可能会“错过”某个文件。RAM 磁盘将绝不由于所有文件都被复制到 RAM,因此丢失一个文件。

答案4

我有 24gb 的 Ram,并创建了一个 5gb 的 Ramdisk 来存储 Pale Moon 的内存使用情况、页面文件、TMP 和 Temp 文件。以下是我的一些建议。

  1. 我喜欢玩 WOT,为了开始游戏,然后进入车库,然后关闭游戏,我“更改”和“删除”了 TMP 条目 1016 次……这甚至不算在玩。下载活动指示器亲自尝试一下。

  2. 我的 7200rpm Western Digital 硬盘的平均读取速度为 105mb,我的 SSD 硬盘的读取速度为 525mb,而我的 Ramdisk... 的读取速度为 8.1GB。下载 HD_Speed.exe 亲自尝试... 以管理员身份运行。

  3. 页面文件设置为最小 256mb,最大 2048mb...三星说如果你的 RAM 超过 4096mb,就这么做。它从 256 开始,从未增加过。所以如果你有足够的空间...就这么做吧!!

  4. 任何时候您都可以停止向任何驱动器写入数据并将其移动到 Ramdisk,这将是一个绝佳的选择!!!

  5. 我使用 Softperfect,它从一开始就运行完美并且免费。

  6. 如果您有 SSD,那么您就不需要预取或超级取回(我有一个三星 SSD,他们建议不要使用)但是如果您没有,即使使用 Ramdisk 我也会这样做。

  7. 至于每次重启时重新加载 Ramdisk... Ramdisk 上唯一重新加载的是 256mb 的页面文件,我甚至没有注意到。 Pale Moon 内存和 Temp/TMP 文件中的所有内容都在您运行时加载... 加载时间快了 7 1/2gbs!!!!

  8. 我根本不经常重启我的系统,这样我的系统就有我正在使用的历史记录,而且 BAM 它就在那里!!!

每个人都有自己的想法,但我拥有运行效果最好的笔记本电脑(ASUS G75VX w/8.1),而 Ramdisk 是其中很重要的一部分!!

相关内容