如何在 SSD 上放置 SuperFetch 缓存?

Ian*_*oyd 11 windows-7 ssd readyboost

我正在考虑将固态驱动器 (SSD) 添加到我现有的 Windows 7 安装中。

金士顿 30GB 固态硬盘

我知道我可以(并且应该)将我的分页文件移动到 SSD

页面文件应该放在 SSD 上吗?

是的。大多数页面文件操作是小的随机读取或更大的顺序写入,这两种操作都是 SSD 处理得很好的类型。

在查看来自数千条跟踪的遥测数据并关注页面文件读写时,我们发现

  • Pagefile.sys 读取的数量比 pagefile.sys 写入的数量大约为 40 比 1,
  • Pagefile.sys 读取大小通常非常小,67% 小于或等于 4 KB,88% 小于或等于 16 KB。
  • Pagefile.sys 写入相对较大,其中 62% 大于或等于 128 KB,45% 正好为 1 MB。

事实上,考虑到典型的页面文件参考模式和 SSD 在这些模式上的良好性能特征,很少有文件比页面文件更适合放置在 SSD 上。

我不知道的是我是否甚至可以在固态驱动器上放置一个SuperFetch缓存(即 ReadyBoost 缓存)。

我希望 Windows 能够在相对较小(例如 30GB)的固态驱动器上缓存数千兆字节的经常访问的数据。这正是 SuperFetch+ReadyBoost(或 SuperFetch+ReadyDrive)的设计目的。

Windows 会提供(或让)我在通过 SATA 连接的固态闪存驱动器上放置 ReadyBoost 缓存吗?

ReadyBoost缓存在ReadyDrive缓存上的一个问题是ReadyBoost缓存在重新启动之间无法生存。缓存使用每个会话的密钥进行加密,使其现有内容在引导期间无法使用,并且在登录期间进行SuperFetch预取。


更新一

我知道 Windows Vista 限制您只能使用一个 ReadyBoost.sfcache 文件(我不知道 Windows 7 是否取消了该限制):

问: EMD 可以使用多个设备吗?答:没有。我们将 Vista 限制为每台机器一个 ReadyBoost

问:为什么只有一台设备?答:时间和质量。由于这是该功能的第一次修订,我们决定专注于使单个设备变得出色,而不会遇到管理多个缓存的困难。不过,我们喜欢这个想法,并且正在考虑将其用于未来版本。

我也知道缓存文件的 4GB 限制是大多数 USB 记忆棒上使用的 FAT 文件系统限制- SSD 驱动器将使用 NTFS 格式化:

问:ReadyBoost 可以使用的最大闪存量是多少?
答:您最多可以为 ReadyBoost 使用 4GB 的闪存(结果是 8GB 的​​缓存带压缩)

问:为什么我不能使用超过 4GB 的闪存?答:FAT32 文件系统将我们的 ReadyBoost.sfcache 文件限制为 4GB

一个可以ReadyBoost的NTFS卷上的高速缓存是大于4GB的?

更新二

ReadyBoost的缓存进行加密,每启动会话密钥。这意味着缓存必须在每次启动后重新构建,并且不能用于帮助加快启动时间或从登录到可用的延迟。

Windows ReadyDrive 技术利用与某些混合硬盘驱动器结合的非易失性 (NV) 内存(即闪存)。此闪存缓存可用于帮助 Windows 启动,或更快地从休眠状态恢复。

  • Windows 7 会使用内部 SSD 驱动器作为ReadyBoost / ReadyDrive / SuperFetch缓存吗?
  • 是否可以让 Windows在不可移动的 SSD 上存储SuperFetch缓存(即 ReadyBoost)?
  • 是否可以加密ReadyBoost缓存,如果是这样,Windows 7 会在启动时使用缓存吗?

也可以看看

Jos*_*hua 8

禁用 ReadyBoost。将您的 SSD 设为您的主要/启动驱动器,和/或确保您的页面文件在其上。ReadyBoost 只是一个辅助缓冲区——如果你的页面文件足够快,你就不需要使用 ReadyBoost。

即使您不能将 SSD 设为您的启动驱动器,您仍然可以告诉 Windows 将 SSD 用于您的页面文件。无论哪种方式,它都消除了对 ReadyBoost 的需要。

  • 我无法将 SSD 作为我的主/启动驱动器 - 它不够大。另外我不想重新安装Windows。另外,这不是我的问题。 (2认同)
  • 您假设 ReadyBoot 会缓存您想要缓存在 SSD 上的数据。情况并非一定如此。如果游戏中只有少数文件/文件夹可以从 SSD 上受益,请使用符号链接将它们迁移到 SSD。(您的大多数用户配置文件也将位于 HD 上,例如文档/图片/视频/等。) (2认同)
  • @Ian,即使您没有将其作为主/引导驱动器,您仍然可以指定 Windows 页面文件的位置。无论哪种方式,一旦您使用 SSD 运行,都不需要 ReadyBoost :) (2认同)
  • @Ian Boyd - 好吧,我希望有人能回答你的问题(我真的不知道)。显然,我们中的一些人认为,即使有可能,您也应该意识到这是错误的选择™。 (2认同)

Ian*_*oyd 3

事实证明,您无法将 ReadyBoost 缓存放在 SSD 上。

\n\n

当您最初格式化驱动器并为其分配驱动器号时,您可以选择在驱动器上放置ReadyBoost缓存。

\n\n

但在随后重新启动时,ReadyBoost 驱动程序会在事件日志中报告:

\n\n
\n

该设备(未知未知)将不会用于 ReadyBoost 缓存,因为 ReadyBoost 驱动程序已附加到其卷堆栈。

\n
\n\n

完整日志条目:

\n\n
Log Name:      Microsoft-Windows-ReadyBoost/Operational\nSource:        Microsoft-Windows-ReadyBoost\nDate:          3/2/2011 10:55:28 \xe1\xb4\xa9\xe1\xb4\x8d\nEvent ID:      1022\nTask Category: ReadyBoost\nLevel:         Information\nKeywords:      (16384)\nUser:          SYSTEM\nComputer:      Harpax\nDescription:   The device (Unknown Unknown) will not be used for a ReadyBoost cache because the ReadyBoost driver is attached to its volume stack.\n
Run Code Online (Sandbox Code Playgroud)\n\n

尽管ReadyBoost对于在旋转盘片上运行的计算机很有用,但 ReadyBoost 似乎仅限于连接到慢速 USB 端口的存储设备。

\n

  • 是的,据我所知,Readyboost 只是为了让低规格机器(例如只有 1 GB RAM 的上网本)获得更好的性能而进行的黑客攻击。一旦您拥有 2GB 或更多 RAM,它就没有任何用处,而且实际上可能会减慢您的速度,因为 USB 驱动器速度太慢了。如果你想提高Windows的速度,首先你应该最大化主板的RAM,然后再购买SSD。我发现,即使使用旋转盘片,只要我有 4 GB 以上的 RAM,我的 Windows 7 机器也非常快。 (2认同)