在windows系统下,电脑内存很少能完全被占用。
当内存接近全部占用的时候,一些不重要的进程就被放到虚拟内存里边去了。
虚拟内存不是内存,是硬盘上划分出来的一小部分,在内存不怎么大的电脑上,一般都是跟内存的容量设定成一样大,当这些进程又恢复到内存中来的时候,由于硬盘的速度根本拼不过(当然高速的固态阵列——固态硬盘可能会好很多)内存提供的速度,当从那些太占内存的程序里面退出的时候,大家的第一反应就是“右键,刷新;右键,刷新”……最好的方法其实还是……重启。
顺带提一下,windows7系统普通情况下建议4GB-6GB内存,64位系统在计算能力要求高的条件下比32位系统有10%以上的优势,如果是用windows8,就更不建议使用32位系统了。
内存的速度用虚拟硬盘软件(Ramdisk)划分出特定区域后可以用硬盘检测软件做直接测量,连续读写速度在DDR3内存上是5GB/s、3GB/s,优秀的民用固态硬盘的连续读写速度都应该在500MB/s(也就是0.5GB/s),而普通硬盘的读写速度都不会超过200MB/s,加上机械结构对琐碎文件读取需要的寻道时间,机械硬盘在现今工艺下的4k文件读写速度就完全不能比一枚普通闪存盘了(U盘)。(4k文件作为小文件代表,是大量硬盘检测软件衡量固态硬盘的关键参考数据,当然硬盘缓存在这个时候就有特别重要的影响了)
所以windows系统还做出了利用U盘作为虚拟内存来解决内存不够用的问题的方案,在连续读写速度达标的U盘连入电脑后,windows7系统会提供ReadyBoost选项。当然,这个功能跟扩展、加大内存相比,还是很差劲,只作为U盘性能极好,没钱买内存的用户的应急方案。(关键词,ReadyBoost)
当然,内存不足的时候,跟处理器完全满载的现象可能相似,例如光标移动困难、无响应(死机),严重时候蓝屏、黑屏重启。
基于Linux开发的Mac OS X据说在内存占满时响应还是可以接受的,windows系统是基于NT开发的,也处在不断演进过程中。