开发学院操作系统Windows Vista 关闭Superfetch和prefetch提升Vista开机速度 阅读

关闭Superfetch和prefetch提升Vista开机速度

 2009-01-05 17:42:38 来源:WEB开发网   
核心提示:Vista开机慢关机启动速度慢如何解决|关闭Superfetch和prefetch,网上很多朋友都在谈论vista启动慢的问题,关闭Superfetch和prefetch提升Vista开机速度,大多有两方面: 1、硬件配置的问题,特别是显存小于128MB,其它 至于关闭superfetch对休眠会有多大影响,我没有测试

Vista开机慢关机启动速度慢如何解决|关闭Superfetch和prefetch。网上很多朋友都在谈论vista启动慢的问题,大多有两方面:

1、硬件配置的问题,特别是显存小于128MB,内存小于512MB。

2、硬件冲突以及驱动程序不匹配的(当然由于这些原因多导致的启动慢,存在于所有windows系统上)

其实还可能有另外一个原因:superfetch,这原本是Windows Vista的新技术,用于加速系统运作。

但实际上,在一些慢速硬盘的设备,例如笔记本上,关闭它反而可以提升系统响应速度。我在自己的笔记本上进行测试,关闭superfetch,然后观察从打开电源到用户登录完成,也就是说登录后,硬盘灯不再常亮,这个过程所需要的时间,节约了大概5-7分钟。

在理解为什么superfetch会影响到系统启动速度的时候,我们需要先讲解几个技术,以充分了解它们的原理。

虚拟内存 包括Vista在内的Windows操作系统都一直在利用虚拟内存,它的作用在于,当物理内存不能满足应用需要的时候,操作系统将开始把应用程序在内存中的部分数据,存储到硬盘,从而释放RAM以备他用。这些被存储到硬盘的数据,以文件的形式存放,通常在根分区,名为Pagefile.sys的隐藏文件。

当需要调用这些数据的时候,操作系统查找pagefile中的数据,并将之返回到内存。在这过程中,由于需要反复的磁盘读写,所以可能导致应用程序反应很慢。

预读Prefetch 于是到了Windows xp,操作系统的设计人员就设计出一种成为 预读Prefetch的技术,这种技术在系统或者应用程序启动过程中,监视数据在磁盘和内存之间的移动规律或者状况,预先把那些读写频率较高的数据,保存到 %systemroot%Prefetch文件夹扩展名为.pf的文件中,并一种规则高效的方式存放这些文件。这样,当这些数据被重复读取的时候,就可以直接从这些缓存文件中读取,而不用重新读取硬盘扇区、磁道,寻找数据的原始位置,自然也就加速了应用程序的响应速度。但这种技术主要的缓存方式仍然是基于磁盘的。

快速预读Superfetch 到了Windows Vista,因为计算机的内存已经日益增大,设计人员开始考虑使用内存作为预读快取的数据存放空间。但出于两方面的原因,一内存是不可记忆的,一旦断电所有数据都将丢失;二 内存并没大到可以容纳所有应用程序的程度,故而 Superfetch的读写操作虽然主要是基于内存,但是将数据写入内存的同时,仍然会写入硬盘,以用于数据交换。这些数据以文件形式存在,通常它们的存放位置在 %SystemRoot%Prefetch 目录中扩展名为 .db 。

同时,由于 Superfetch技术是构建在Prefetch的基础之上,所以Vista在启用 Superfetch的同时也开启了 Prefetch功能,这也进一步加剧了磁盘读写。如果您的计算机硬盘速度碰巧比较慢,比如笔记本的 5400转硬盘,那么Superfetch反而会导致您的系统变慢。

解决问题 我们了解了Superfetch的工作原理,解决系统启动慢也就不成为问题了。下面对Superfetch的调整,通过注册表就可以完成了。superfetch的注册表键值在

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters

那么提升Vista系统启动速度以及应用程序响应速度,您可以考虑三种方式:

1、调整 superfetch 缓存级别。

键名为 EnableSuperfetch

键值为 0=停用 1=Superfetch 应用程序 2=Superfetch 启动程序 3=Superfetch 两者

默认值为3,您可以尝试调整这些值,感受一下调整后,系统或者应用程序的响应速度。

2、关闭 prefetch 或者 superfetch

Prefetch的键名为 EnablePrefetcher,键值设置同上。您可以将两者或者其中一个设置为 0,即关闭它们以减少磁盘读写。

3、采用 readyboost

此时superfetch将会把缓存的数据文件转移到闪存存储上。转为Readyboost所准备的闪存存储要比5400转的笔记本硬盘来得快。我做过一个尝试,一般的闪存复制数据,大概在 3-4MB/s,而readyboost闪存能够到 10MB/s。所以使用readyboost的技术,一方面加速了superfetch的运作效能,另一方面也减少了硬盘的读取,从而让您的计算机在运行的时候能够更快的响应。

其它 至于关闭superfetch对休眠会有多大影响,我没有测试,大家有兴趣可以测试一下。

Tags:关闭 Superfetch prefetch

编辑录入:爽爽 [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
赞助商链接