Superfetch & Prefetch

[ 2007/06/13 09:41 | by gOxiA ]

      今天浏览一些达人的Blog时看到了关于Superfetch的讨论,看来还是有很多网友对Superfetch不了解,其实Superfetch和Prefetch都是微软针对系统而设计开发的一项内存管理技术也就是内存的预取技术,而Superfetch(超级预读取)是内置在Vista系统中的,实际上由XP中的Prefetch演变而来,他们的工作机制大体相同。

      自己不想再去陈述他们之间的特性和概念,所以从网上摘抄来一部分资料供参考:

什么是Vista SuperFetch技术?和prefetch有什么不同?

Vista下面的Superfetch技术,即“超级预读取”,由XP系统中的Prefetch进化而来。

下面,先讲下先说什么是Prefetch:

在Windows XP操作系统中,微软对虚拟内存技术做了进一步改进,发展出了预取技术(Prefetch),预取技术的基本思路是,在载入某个程序之前,预先从硬盘上中载入一部分该程序运行所需的数据到物理内存中,这样便能加快程序的启动速度。

在Widows XP中,使用预取技术的具体方法是:在系统和应用程序启动时,监视内存页面与交换文件以及硬盘上其它文件的数据交换状况,当发生数据交换时,Windows XP会纪录下每一个程序运行时经常需要读取的硬盘文件,并将读取的情况记录在\windows\Prefetch目录中的pf后缀名文件中,Vista之家特别截图如下:

一旦建立了这些pf文件,在每次需要启动系统或相应程序的时候,Windows会首先中断当前准备载入的程序,而转去查找\Windows\Prefetch目录,看是否有当前载入程序的纪录,如果有纪录,则马上按照纪录的情况载入程序运行过程中可能会用到的所需文件到物理内存中。这项任务完成之后,Windows才继续载入被中断的程序。

经过这样的处理之后,在程序运行过程中,需要读取那些文件时,由于文件已经被“预取”到内存中,此时就不用再到硬盘上进行读取,因此减轻了程序载入过程中频繁交换内存页面与交换文件的现象,改善了内存不足时程序运行的响应速度。

为了进一步优化预取操作的效率,Windows XP还会定期对pf文件进行分析处理,组织好程序文件载入的顺序,并将这些分析处理后的信息存放在\Windows\Prefetch目录中的Layout.ini文件中。同时还会通知磁盘碎片整理程序,在下次运行碎片整理时,按照Layout.ini文件记录的内容,将相关文件的位置整理在连续的硬盘区块中。

这项技术从根本上说仍然属于被动式的调度。换句话说,只有在程序主动发起载入请求时,Windows才会进行相关的调度操作。

被动式调度的存在可能对系统性能造成一些影响。我们考虑这样一个例子,假设你有在工作的午休时间运行杀毒软件的习惯,那么在下班前,一般会停止处理工作程序,然后运行杀毒软件,此时,如果使用的是Windows XP,那么操作系统会将工作程序所占用的内存页面写入硬盘交换文件中,并读取杀毒软件的文件载入内存。午休过后,杀毒软件已经运行完毕,但是你在重新开始使用工作程序的时候,系统仍然需要经历杀毒软件和工作程序的硬盘交换文件与内存页面的交换过程,此时程序的响应速度明显降低。

如果系统能够进一步自动记录下这些经常性的操作行为所发生和结束的时间,当时运行的前台和后台软件等等详细情况,那么在内存有空闲空间的时候,就可以在预定的时机预先将一部分文件载入到内存中,这样就避免了上面例子中发生的不愉快情况。

什么是Superfetch:

不错,这正是Windows Vista中Superfetch技术所能解决的问题。由于采用了新算法,Superfetch不但继承了Windows XP预取技术的全部优点,还进一步具备监视程序运行时状况,时间等详细情况的功能,可以根据用户的使用习惯,自动预先将存放在硬盘的交换文件转换到内存页面中去,使用户经常运行的程序启动时的速度得到进一步的加快。如下图:

Superfetch技术的中心思想是:“过分空余的内存空间即是浪费”。的确,如果一个操作系统总是保留着过多的空余物理内存耗费电能,却不能够利用这些多余的内存空间提高系统性能的话,为什么不更好地利用这些多余的内存空间呢?将这些多余的物理内存作为缓存使用,就是Superfetch技术的本质。而也正是由于采用了这种以内存为缓存的策略,才造成了Vista对内存容量的饥渴!

如果你对这项技术感到反感,或者物理内存容量实在太小,那么到管理工具—服务中关闭Superfetch服务也是一种选择。但需要注意的是,如果再次开启Supertech服务,那么由于需要经过一段监视记录用户使用习惯的过程,因此需要等待较长一段时间后,Superfetch技术才能重新为系统带来明显的提速效果。

      其实大家对该项技术的顾虑完全没有必要,如果你认为由此带来的一些系统性能下降开机速度变慢,可以进入“C:\WINDOWS\Prefetch”目录,将其下所有文件删除,之后重新启动计算机,这个时间内不要去使用计算机,待整个系统完全启动完毕后再次重新启动。之后你就会发现系统启动速度明显变快,程序的运行速度也会明显变快!

      注意:以上为个人经验,并在XP下实验有效,因目前没有运行Vista的系统,所以无法验证Vista。

期待已久的 Microsoft Virtual Server 2005 R2 SP1 已经正式发布,但还是很遗憾没有对Linux正式支持。不过从诸多的新特性和功能来看,VSRV2005R2SP1的改进还是不小的。

http://www.microsoft.com/windowsserversystem/virtualserver/

ChangeDescription

Hardware-assisted virtualization

Supports both Intel Virtualization Technology (Intel VT) and AMD Virtualization (AMD-V) hardware-assisted virtualization.

VHD Mount Command-line Tool and APIs

Provides the ability to mount a virtual hard disk file (.vhd file) as a virtual disk device on another operating system.

Support for Volume Shadow Copy Service

Allows back-up of Virtual Server and its running virtual machines without needing to install backup agents inside the guest operating system of the virtual machines.

Larger default size for dynamically expanding virtual hard disks

The default size for dynamically expanding virtual hard disks has been changed from 16 GB to 127 GB, making the VHD file format even more useful for enterprise production, test, and disaster-recovery workloads.

Support for greater than 64 virtual machines on x64-based hosts

Virtual Server can run more than 64 virtual machines on x64-based hosts. The 64 virtual machine limit remains when running on 32-bit hosts.

Host clustering step-by-step guide

Host clustering allows you to extend the high-availability benefits of clustering to non-cluster-aware applications and workloads.

Virtual SCSI fix for Linux guests

This fix resolves an issue some customers encountered when trying to install certain Linux distributions inside a virtual machine on the emulated SCSI bus.

VMRC ActiveX control and Internet Explorer Security Zones

The Virtual Machine Remote Control (VMRC) ActiveX control now uses the security zone information in Internet Explorer to determine whether to prompt you for your credentials when you load the control.

Service Publication using Active Directory Service Connection Points

Virtual Server service now publishes its binding information in Active Directory as a Service Connection Point (SCP) object.

具体改进可以参考:http://www.microsoft.com/technet/virtualserver/evaluation/vsoverview.mspx

TechNet 观察员续期申请通过

[ 2007/06/12 11:42 | by gOxiA ]

      今天收到了 Windows IT Pro 的来信告知我的 TechNet 观察员续期通过了,续期后的有效时间是自2007年7月1日~2008年6月30日。同时为了表示对 TechNet 观察员的感谢,将会邮寄 TechNet 礼包,其中包含一枚 TechNet 观察员徽章、Windows IT Pro 的第五期杂志及微软IT基础架构优化指南。

分页: 4/9 第一页 上页 1 2 3 4 5 6 7 8 9 下页 最后页 [ 显示模式: 摘要 | 列表 ]