对于Windows Vista、Windows7的内存的使用,很多人都存在着认识误区。从XP升级的用户大多都认为:系统空闲时空闲的内存应该越多越好。而到了7的时代(更准确的说是Vista之后),这一个本 该转变的观念却还迟迟留在大家的记忆里。所以在此把Windows7新内存管理机制“Superfetch”介绍给大家,让大家了解Windows7内存 占用大的原因。
Windows 7内存管理有何不同
“Superfetch”并不是一个新的技术,在Vista时代就已经开始采用,不过鉴于用过Vista的人数比较少,而XP时代的各种电脑技 巧始终还深入人心,所以很多人都在疑问为何Windows7内存占用如此之大。
Superfetch内存管理机制会将用户可能使用的应用程序页面利用内存可用空间进行预加载;尽可能地避免系统发生从硬盘的页面调用;让应用程序最快速度开启;不会由于计算机长时间闲置而使突然使用变得响应迟缓;在退出大型应用程序后会主动将之前被迫转移到虚拟内存中的页面重新 调入内存当中。这样看起来似乎专业了点,所以接着往下看,会很好地对这些特点进行理解。
为何第一次启动程序会感觉很慢?
相信大家都有过类似的经历。当我开机后,第一次运行一个程序,就比如说是Word吧,可能需要5秒才能启动。当我关闭后再开,也许只用2秒。如 果我不关闭,直接打开另外一个Word文件,那就更快了。这是什么原因造成的呢?
当我们开机后,工作集里面没有Word这个员工(页面),他还在家(硬盘)里面。于是当我召唤他的时候,它才从家走到办公室(工作集)。这样的 过程就叫做硬调页了,当然需要的时间长。而当我们关闭了Word时候,他就被派往大厦的另一房间,我却马上再次召唤他,这时,另一个房间内的数据还没被清 零,他便不用从家里走来,而是直接从数据结构里面引入就可以了。在不关闭这个程序Word的情况下,他也不用为其他程序让路的时候,它还存在于办公室(工 作集)里面,召唤他的时候就会更快。这样的“无需从硬盘中重新调用数据,而是将数据结构中的页面重新挂载到工作集中”的过程,便叫做软调页了。大家都知道内存速度远远快于硬盘,所以“软调页”的使用就是第二次运行程序变得很快的原因了。
Windows 7内存占用大的原因
现在我们知道了当内存中有所需程序页面的时候会使程序启动变得更快。而Windows7中的“Superfetch”已经具有了学习的功能,自从第一次使用Windows 7时,Superfetch就开始记录我们的使用习惯,将我们经常使用的程序的页面在开机后进行提前加载,那么当我们第一次开启程序的时候便可以获得像第二次开启一样的速度了。所以这些预加载的页面就会使得我们的内存占用变多。简单地说就是让所有程序操作在内存中进行,避免使用硬盘硬调页空间,这也就是为 何感觉Windows7占用很大内存的原因。
本文来源:中关村在线 作者:佚名