科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网存储频道闪存为Vista加速 Ready了吗?

闪存为Vista加速 Ready了吗?

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

2005年秋季IDF上,英特尔首次披露了Robson技术,标志着闪存将要进入计算机的存储器系统架构中。根据该公司的计划,2007年5月被称为迅驰4的Santa Rosa移动平台发布时,并在先进的P35芯片组中也预留了它的位置。

2007年8月6日

关键字: Inspur 英特尔 Turbo memory Robson

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共8页)

Turbo Memory评测分析篇——ReadyBoost、ReadyDrive左右互搏

以下面讲解Turbo Memory在Windows Vista中的工作原理。

ReadyBoost

这是一项发挥闪存的随机访问速度优势,加快程序的加载速度和运行性能的技术。它和开机的速度无关,这是一项进入系统之后才启动的服务。

它对USB闪存的要求是:USB2.0接口;剩余空间不低于256M;读取4KB数据的速度需达2.5MB/s或以上,随机写入512KB数据的速度需达1.75MB/s或以上,而且整个闪存空间都要高于这个速度要求,可以说它的要求已经比较低,因为硬盘的随机访问速率在1MB左右。

在常规情况下,内存需要和硬盘中的虚拟内存进行页面交换,而通过Turbo Memory上的ReadyBoost缓存,内存可以直接和迅盘进行页面交换(黄色部分代表虚拟内存),速度得以提升。ReadyBoost中的数据经过了2倍的压缩和128bit AES(Advanced Encryption Standard)加密,即512MB的闪存可以缓存1GB的数据。(加密和压缩均为软件实现)

虽然ReadyBoost经过了压缩/解压和加密/解密的过程,在一定程度上会影响数据传输率,但是即使用速度不如Turbo Memory模组的U盘,页面交换速度仍然比硬盘要快得多。2X压缩也表明了闪存容量对于命中率的提高是非常有效的,微软的推荐值是物理内存的1~2.5倍。

此外,128bit AES加密几乎不会带来硬件性能的损失,而且安全性很高,应用范围极广,索尼PSP也采用了同样的加密方法。可能对于Turbo Memory而言,加密的重要性不如U盘,但是对于一直标榜“安全”的Vista,自然是想做得滴水不漏。

SuperFetch

微软对SuperFetch 定义是:Windows Vista系统所采用的一种通过历史信息和前瞻性内存管理来增强“Least-Recently Accessed”(最近最少访问)方法的内存管理方案。

SuperFetch可以看作Windows XP所采用的PreFetch预读取技术的升级版,PreFetch的作用是在每个应用程序启动的时候预先加载所需的DLL和程序应用文件。SuperFetch则是把用户常用的应用程序页面事先缓存到内存中,可精确至哪一个账户、一周中的哪些天、一天中的哪些时间使用哪些前台应用程序,对于计算机用户——尤其是企业用户而言,使用电脑往往会有一定的规律,使用的软件也相对的固定,根据统计学的原理,一个系统的使用时间越长,结果就越精确,并且习惯变化时系统也会随之变化,当应用程序运行时就不需要从磁盘中读取所需的内容。

SuperFetch的意义在于对大容量内存的管理功能比Windows 2000/XP更加优秀,尤其对于2GB以上的内存更加明显,SuperFetch可以让Vista更好地利用闲置的内存容量,而且不会减少可用内存。

这是评测用样机(标准内存容量1GB,集成显卡分配8MB)在无操作时的情况,“已缓存”值已经达到了599MB,可是已经使用的“物理内存”仅有55%,即是说有近600MB的文件被加载到了备用页面列表中,这就是SuperFetch

什么是备用页面列表呢?常说的可用内存由四个部分组成,分别是自由页面列表(Free Page List)、已修改页面列表(Modified Page List)、清零页面列表(Zero Page List)和备用页面列表(Standby Page List),内存工作集里的进程退出之后,并不会真正的清出内存,而是进入备用列表中,再次引用时,会触发缺页中断(Page Fault),不过如果进程仍在备用列表中,那么只会发生软中断,进行的是内存内部的页面交换,如果内存中找不到相应的页面,就会触发硬中断,必须访问速度非常慢的硬盘。

如果在测试Turbo Memory时喜欢重复启动同一个程序,然后对连续打开四到五次的成绩进行对比。基于上述所谈到的原理,得出结果是没有太大参考价值的,你会发现启动速度越来越快,然后稳定在一个值,然而此时页面交换是在内存内容进行的,除非内存实在太小,程序关闭之后马上被彻底清出内存,把空间分配给其它的进程,否则连硬缺页中断都不会发生,Turbo Memory能起到什么作用呢?

Turbo Memory的ReadyBoost缓存中会载入SuperFetch的文件,同样是容量越大命中率越高。需要注意的是,ReadyBoost进程的优先级别是“正常”,而SuperFetch的加载到内存中的程序IO优先级别为“后台”

关于SuperFetch会导致前台进程性能下降以及引起硬盘频繁读写的说法是不正确的,由于I/O优先级低,它不会和优先级更高的前台进程互抢资源,同时SuperFetch的理念是让内存中尽量保持正确的内容,让尽量多的页面交换在内存中进行,以减少磁盘访问的次数,小内存的用户也会从中受益,只不过命中率太低而已。

如果内存的容量足够大,SuperFetch可以缓存大量的备用列表,当启动一个常用的进程时,如果备用列表中缓存命中,发生的是软页面中断,只需要改变内存列表中逻辑地址的指向便可,几乎没有数据交换,当前台进程的内存占用率提升之后,SuperFetch缓存中最近最少访问的数据就会被“请出”内存。

内存容量过小的情况会怎么样呢?例如512MB内存,只能满足Vista运行的最低要求,也许还有一小部分可以用于缓存SuperFetch文件,但是由于容量太小,命中率可想而知。ReadyBoost就是为了解决这一问题而产生的,把SuperFetch缓存保存在闪存中,利用闪存随机访问速度远高于硬盘的优势来达到加速的目的,虽然触发的仍然是硬缺页中断,不过页面交换的速度仍然是硬盘无法企及的。

ReadyBoost会在硬盘中会保存一个映像,采用的是Write Through机制,两者数据保持同步,这是为了连接可靠性不高的U盘而设计的,以免U盘突然被拔出而丢失数据。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章