Windows 8 Ramdisk 使用指南

by shinichi_wtn 2014-04-07 10:04

Ramdisk一直以来都是我装机必备的工具,它可以将富余的内存当硬盘使用,用来存放临时文件,对于提高机械硬盘I/O效率,或者减小固态硬盘读写次数,再好不过。目前机器的内存普遍都不小,一般笔记本也都4G或者8G内存了,所以完全可以分512M或者1G(甚至更多)来作为Ramdisk。

Ramdisk软件推荐

目前很多软件公司都有自己的Ramdisk产品,有收费的也有免费的,其实功能都大同小异,所以推荐使用免费轻量的SoftPerfect RAM Disk。

  • SoftPerfect RAM Disk:完全免费,基本功能都有,内置多语言支持,同时有64bit和32bit的版本
  • Primo Ramdisk:收费软件,功能齐全,配置丰富,支持动态内存管理(根据实际占用量分配内存),也同时有64bit和32bit的版本,上学期间用过,也挺不错,唯一的缺点就是价格太贵

Windows 8 Ramdisk Tips

由于windows 8/8.1自身的特点,使用Ramdisk会有一些微妙的问题,这里列举我在使用中的一些经验:

  • 即使更改IE临时文件夹Temporary Internet Files到Ramdisk,在Win8下仍无效(Win8.1不受影响),这是因为IE10(Win8)默认将Enable Enhanced Protected Mode(启用增强保护模式)打开,而IE11(Win8.1)则默认关闭了,而打开“启用增强保护模式”即使在IE选项里把临时文件指向Ramdisk里的Temp文件夹,IE临时文件仍然会被记录在C盘特定文件夹里(C:\Users\YouUserName\AppData\Local\Packages\windows_ie_ac_001\AC\INetCache)。所以如果还在使用Win8的IE10,需要先将“启用增强保护模式”关闭,再设置IE临时文件夹。(细节可以参见讨论贴:http://answers.microsoft.com/en-us/ie/forum/ie10-windows_8/ie-10-temp-internet-files-windowsieac001/90642d92-54f9-412e-b7ca-73b425c6efdd
  • 当IE临时文件被移动到Ramdisk之后,可能会出现Metro应用(比如人脉)启动闪退,或者使用过程中闪退的情况,这是因为许多Metro应用同样需要读写IE临时文件夹里的某些文件,并且需要保证Ramdisk是一个真正的NTFS硬盘,否则就会出现一些诡异的问题。解决方法很简单,以SoftPerfect RAM Disk为例,创建Ramdisk的时候,格式一定要选择NTFS(不能选FAT32或者其他格式),并且勾选上“Hard Disk Emulation”(硬盘仿真),这样才会让创建出的Ramdisk和真实硬盘一模一样,从而不会再有闪退问题
  • 需要注意的是,Metro IE强制启用了增强保护模式,所以之前对IE临时文件夹的转移只对桌面版IE有效,使用Metro版IE的时候临时文件仍会被放在C盘C:\Users\YouUserName\AppData\Local\Packages\windows_ie_ac_001\AC\INetCache里面
  • 对于Chrome浏览器,设置缓存路径更简单,修改Chrome的快捷方式,增加启动命令行参数即可"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disk-cache-dir="R:\temp"
  • 可以使用NTFS symbolic link将各种临时文件夹重定向到Ramdisk。不光是IE临时文件夹,我们平时使用的各种软件可能会写入大量的临时文件,某些软件会提供设置缓存位置的选项,但大部分软件并没有此类功能,所以基本上还是放到C:\Users\YourUserName\AppData的某个目录下。这时我们可以使用Windows的Resource Monitor来监控硬盘读写的情况,假设软件临时文件夹路径为OriginPath,重定向到Ramdisk的路径为DestinationPath,那么使用语句mklink /D OriginPath DestinationPath即可创建一个OriginPath到DestinationPath的symbolic link,这样软件读写OriginPath的时候,实际却发生在DestinationPath

以上就是我在Win8/8.1下使用Ramdisk的一些小经验吧,Ramdisk更多的潜力还需要你自己去发掘!不管怎样,使用Ramdisk来提升I/O性能、减小实际硬盘读写是毋庸置疑的!

Comments (2) -

Louis People's Republic of China
8/21/2014 7:34:29 PM #

Windows8 用Qsoft enterprise ramdisk混合关机再开机之后内存盘上的文件不会被清空 怎么解决?

Reply

shinichi_wtn People's Republic of China
8/21/2014 9:08:35 PM #

没有用过Qsoft enterprise ramdisk,不过应该有设置可以禁用,你可以找找。有些软件具备关机自动备份内存盘里面的文件到本地硬盘,然后开机的时候直接加载到内存盘中,防止数据丢失。

Reply

(仅用于Gavatar)

  Country flag

biuquote
  • Comment
  • Preview
Loading

About

shinichi_wtnI'm Shinichi_wtn

Software Engineering Manager at Microsoft

[More...]


Month List