快讯

流言终结者二 Win8还需要ReadyBoost么?

2012-10-09 16:07  出处:pconline 原创  作者:唐山居人[专栏]   责任编辑:caoweiye 

三、科普篇:ReadyBoost技术原理

  很多人都认为ReadyBoost是直接加大内存空间,其实不然,这项技术是与Windows的另一项特性Prefetch相辅相成。简单来说Prefetch(文件预读取,Vista之后升级为“SuperPrefetch”)是微软在XP中加入的一项文件缓冲机制,能够通过分析用户使用习惯将部分文件预先调入内存。

  好处是当用户真的点击这些程序时,这些预读好的数据能够直接从内存中读取,由于内存与硬盘间的巨大差速,实际使用中Prefetch的确可以让程序启动变快。

  不过正是由于Prefetch(或SuperPrefetch)的这项原理,当物理内存过小而无法满足Windows需要时(Vista刚发布时普遍都是512MB内存),SuperPrefetch反而会成为系统的“绊脚石”,与系统争抢原本就不多的内存空间。

Win8闪存预读技术解读
图9 这里的“已缓存”即是SuperPrefetch

  在这种情况下ReadyBoost应运而生,它的核心理念就是将系统预读文件直接转移至U盘(实际上是硬盘与U盘并存一份缓存,优先读取U盘,这样当U盘拔出或失效时,还能转回硬盘不至出现故障),一来可以减轻物理内存的空间压力,二来也好借助U盘本身随机读写快的特性(相对硬盘而言,硬盘只是连续I/O快,随机读写效率极低)来让预读文件更快地读取。

  但如果物理内存已经大到足以满足系统及SuperPrefetch需要时又会怎么样呢?没错!ReadyBoost的效果就不那么明显了,这也就是为何图8中内存越大差速越小的最终原因(这里还掺杂了Win8硬盘读取效率提升的因素)。

Win8闪存预读技术解读
图10 随机读写U盘更有优势

  编者按:当ReadyBoost认为U盘内缓存比硬盘缓存更能满足随机读取需要时,会直接从U盘内随机读取数据。但如果系统正在有序地访问数据,便会自动转回到硬盘读取,即便数据同样存在于U盘缓存。

  换言之在实际工作中,ReadyBoost的智能化程度还是相当高的,能够自动选取最适合当前任务的介质。

四、实战篇:你的U盘够劲儿么?

  通过上面的介绍,相信大家已经明白,所谓ReadyBoost其实就是利用U盘随机读写快的特性,将SuperPrefetch转移到自己身上,然后再通过加快预读文件读取(相比硬盘来说)提高系统运行速度(其实是软件启动的响应时间)。

  那么这里就引发了一个小问题,即你的U盘一定要足够快,否则过慢的U盘非但不能缩短程序响应时间,甚至还会成为系统的“拖累”。

  事实上微软对于ReadyBoost U盘的确存在一个技术要求,即4KB随机读取传输率2.5MB/s或更高、512KB随机写入传输率1.75MB/s或更高、接口USB 2.0以上、容量256MB以上。

  而且这些参数会在用户开启ReadyBoost之时自动检测,只有系统确认U盘不会给自己“拖后腿”时才会允许用户开启ReadyBoost。

Win8闪存预读技术解读
图11 Windows验证合格后才允许用户开启ReadyBoost(用户可自由指定ReadyBoost所占用的空间)

Win8闪存预读技术解读
图12 笔者所用U盘的测试结果(注意4KB和512KB两者结果)

  通过资源监视器我们可以更清楚地看到ReadyBoost的运作,当笔者在电脑中开启ReadyBoost之后,会发现瞬间硬盘狂转起来,如果这时打开资源监视器,会看到一个进程正在以20MB/s的速度向U盘内写入文件,而这恰恰正是这部U盘的最高写入速度。

Win8闪存预读技术解读
图13 开启ReadyBoost后系统以20MB/s速度向U盘写入文件(见右图蓝线)

  整个过程约会持续5分钟,之后高强度写入没有了(偶尔还是有的,因为ReadyBoost要不断更新数据),取而代之的则是启动软件后的瞬间高速读取,换言之此时操作系统已经转而使用U盘读取预读文件,ReadyBoost正式生效!

Win8闪存预读技术解读
图14 随后的软件启动,系统会直接从U盘的ReadyBoost文件中读取(见右图绿线)

写在最后

  总体来说,ReadyBoost仅仅是一项利用U盘存储预读文件(Prefetch)的技术,并非直接加大物理内存。只有当物理内存无法满足Windows需要,或者预读系统性能不佳的情况下,它才会显示一定的效果。

  而且它所加速的其实只是Win8的SuperPrefetch模块,并非直接作用于程序本身,因此使用该功能必须要同时开启SuperFetch。

  也就是说ReadyBoost更适合那些物理内存小、内存槽已满无法升级,以及内存过时不易买到的用户,如果物理内存大于或等于2GB,在目前条件下ReadyBoost产生的效果将微乎其微!

点击进入Windows 8中国发布会直播专题
点击进入Windows 8发布会现场直播专题

点击进入Windows 8专区
点击进入Windows 8专区

键盘也能翻页,试试“← →”键
IT热词搜索 来源:360新闻
软件论坛帖子排行