Windows 7合理虚拟内存RAMDISK提升运行性能

简介:

我们都知道物理内存是计算机中非常重要的组件之一,也是我们评估计算机性能一个非常重要的指标。随着技术的发展,目前大多数的计算机都拥有至少2GB的内存容量,但我们的操作系统使用内存的容量也越来越大,那么究竟要多少内存才能够满足我们的计算机需求?其实这个问题似乎没有我们想象中那样的复杂,即使我们只有1GB内存,在某些时候我们也能够非常流畅的运行Windows 7,这正是Windows 7的奇妙之处,更多的应该说是虚拟内存的功劳。在转入正题之前,我们还是先来看一下Windows 7中的任务管理器,因为这里是最直观反馈出我们的内存\CPU以及进程数量的地方。

image

任务管理器是Windows中非常实用的系统工具,通过任务管理器用户可以快速的查看系统资源的占用,以及当前所运行的程序以及后台进程。随着Windows操作系统的不断发展,任务管理器也在不断的改进,Windows 7中的任务管理器能够显示更详细的进程信息,这样可以帮助用户明确正在运行的进程是否安全。上图这正是小弟现在使用的一台计算机之一,可以看到在我日常的使用中,内存已经占用了1.71GB,对于一个只有2GB内存的本本来说,基本上算是山穷水尽了。但即便是这样的情况,在大多数时候我都能够非常流畅的运行Windows 7,原因非常的简单,因为空闲的内存并不会增快系统的运行速度。下面就进入我们的正题虚拟内存,可能有一些朋友还不太了解虚拟内存是怎么一回事,这里简单的讲一下:

我们都知道虚拟内存是用于存放一些内存中的“鸡肋”的空间,这一部分数据将其放在内存中并不会直接或及时的使用,但相比沉睡在硬盘中未播放的影音文件又显得需要更快的被读写。 
这里我在举一个形象一点的例子,就如同我们平常生活中的做菜,内存就好比我们的冰箱,我们可以买一些要做的菜将其存放到里面待要做的时候可以直接取出来即可,这样就非常方便快速;硬盘就好比我们的菜市场,如果冰箱里面没有,就需要我们去菜市场买来再做,这样就很麻烦并且慢得多;虚拟内存就好比家里的地下室,我们可以根据需要把一些不是很要紧的菜放在里面,虽然没有冰箱方便但却比去菜市场买菜方便快捷不少。

相比Windows XP,在Windows 7的任务管理器无法直接看到虚拟内存的,也许是Windows 7中已经逐渐的在桌面和日常的用户体验中简化了虚拟内存,并迈向一个更高级的智能管理技术,从而自动控制虚拟内存,以达到系统最佳性能。在Windows XP系统中,我们打开任务管理器切换到“性能”选项卡中,然后就可以直接看到虚拟内存的使用量,如下图。对比可以看到,在Windows 7中的任务管理器已经将Windows XP任务管理器显示“PF使用率”的位置更换成了物理内存的展示,并且从Windows XP中单位KB改为了MB,也就是兆字节。

image

在了解到这个的基础上我们可以仔细想想就知道,如果把菜市场所有的菜都搬进家里或地下室想必成本太高,而且很多菜在多数时候都不会用上。这就好比我们把内存的容量变成和硬盘一样的容量,需要非常高的成本,并且很多时候一些文件根本不会被使用。

废话完了,我们来正式的看下这个问题:

 

在我们了解Windows 7是混合使用虚拟内存和物理内存的情况下,如果我们使用8G内存,并且将虚拟内存关闭,我们看下这样一个情况:假设我们打开了200个Word文档,每个文档各占30MB,活跃编辑的文档只有2-5个。

 

第一种是不开起虚拟内存的情况:由于没有虚拟内存,Windows 7无法将不活跃的190多个文档转入虚拟内存来腾出物理内存,这时我们系统的运行将会受到限制,会被Windows 7提示内存不足,此时无法再运行其他大型程序;

第二种是开起虚拟内存,并通过RAMDISK虚拟4G物理内存作为虚拟内存所使用的硬盘,那么系统就只有4G物理内存,除去系统运行所需要的5-700MB内存,剩下的3.5G空间只够打开110多个Word文档。但此时Windows 7应该仍然可以打开200个文档,因为我们还有4G的虚拟内存,可以存放不太活跃的文档。至此我们可以发现,其实使用RAMDISK虚拟物理内存作为硬盘来存放虚拟内存,仅从虚拟内存上讲其实意义并不大。但RAMDISK虚拟的硬盘还可以存放浏览器的缓存和临时文件,对此还是有一定的效果。

 

从另外一方面来讲,比如我们需要运行大型程序或虚拟机,需要占用超过4G的物理内存,在使用RAMDISK虚拟4G物理内存出去,则这些程序最多只能占用3.2G左右的物理内存,远远没有直接使用8G物理内存效果好。

关于虚拟内存到底设置多少是最佳的,我们可以通过Windows 7中的“性能监视器”来统计虚拟内存的使用量,然后根据这个统计出来的结果来确定计算机应该设置的最佳虚拟内存大小。然后再通过RAMDISK来创建这样一个大小的硬盘存放虚拟内存和浏览器临时文件,而不要盲目的直接设置虚拟内存大小。

要收集我们计算机所使用的虚拟内存是多少,我们可以通过Windows 7中的“性能监视器”来完成,单击“开始”菜单-“控制面板”-“性能信息和工具”-“高级工具”;

image

然后单击“性能监视器”

image

在打开的“性能监视器”窗口中展开“性能”-“数据收集器”,右键“用户定义”-“新建”-“数据收集器”;

image 
然后在向导中输入一个名称和设置手动创建方式,单击下一步;

image

选择“性能计数器”,单击下一步; 
image

单击“添加”来添加“虚拟内存使用量”计数器;

image

找到“Paging File”,选中“\??\C:\pagefile.sys”然后单击下方的“添加”按钮,然后单击“确定”按钮;

image

然后在“用户定义”窗格中右键该采集计划,选择“属性”,在“停止条件”选项卡中设置采集时间,设置完成单击“确定”按钮;

image

采集的时间可以根据自己的需要来定,但相对的时间越长得到的结果月准确。然后在“用户定义”窗格中右键,并开始该采集计划;

image

这时我们的采集任务就开始了,我们可以单击下方的“报告”-“用户定义”-“虚拟内存”计划来查看该报告,但由于采集还没有结束,我们只能看到一个采集进度条;

image

在结果出来之后,我们再根据自身的需要来确定是否需要RAMDISK虚拟物理内存来存放虚拟内存,还是直接使用物理内存。在设置虚拟内存值大小的时候,我们旺旺不能单独的靠采集结果来设置,而需要向上浮动30%左右。比如采集结果显示我们平常使用的虚拟内存大概是600MB左右,那么我们在设置虚拟内存的时候尽可能的设置在900M-1200M,这样可以获得更好的计算机体验,以免在一些特殊的情况Windows提示我们“计算机虚拟内存太小”的提示。

另外,在此我顺便的说一下,从Windows Vista之后虚拟内存的效率已经得到了较大的提升,这主要是因为现在大多数的计算机都拥有4G甚至更高容量的物理内存。所以,在高于8G或16G物理内存的计算机,更应该通过性能采集器来设置一个最佳的值。如果通过计算机自己设定,则基本上都是虚拟内存的大小就等于我们物理内存的总容量,想想我们16G物理内存就意味着要占用16G的硬盘空间作为虚拟内存,并且这部分虚拟内存不会因为虚拟内存使用的少就少占用空间,是固定的16G。并且在大容量内存的计算机中设置太高的虚拟内存,反而在某些情况会造成计算机的性能下降,所以合理设置虚拟内存和使用RAMDISK才能够提升系统的运行性能。


 本文转自 reinxu 51CTO博客,原文链接:http://blog.51cto.com/reinember/696716,如需转载请自行联系原作者

相关文章
|
11天前
|
Kubernetes Cloud Native Java
云原生之旅:从容器到微服务的演进之路Java 内存管理:垃圾收集器与性能调优
【8月更文挑战第30天】在数字化时代的浪潮中,企业如何乘风破浪?云原生技术提供了一个强有力的桨。本文将带你从容器技术的基石出发,探索微服务架构的奥秘,最终实现在云端自由翱翔的梦想。我们将一起见证代码如何转化为业务的翅膀,让你的应用在云海中高飞。
|
2月前
|
存储 安全 数据库
阿里云服务器计算型、通用型、内存型主要实例规格性能特点和适用场景汇总
阿里云服务器ECS计算型、通用型、内存型规格族属于独享型云服务器,在高负载不会出现计算资源争夺现象,因为每一个vCPU都对应一个Intel ® Xeon ®处理器核心的超线程,具有性能稳定且资源独享的特点。本文为大家整理汇总了阿里云服务器ECS计算型、通用型、内存型主要实例规格族具体实例规格有哪些,各个实例规格的性能特点和主要适用场景。
阿里云服务器计算型、通用型、内存型主要实例规格性能特点和适用场景汇总
|
3天前
|
安全 Java API
【性能与安全的双重飞跃】JDK 22外部函数与内存API:JNI的继任者,引领Java新潮流!
【9月更文挑战第7天】JDK 22外部函数与内存API的发布,标志着Java在性能与安全性方面实现了双重飞跃。作为JNI的继任者,这一新特性不仅简化了Java与本地代码的交互过程,还提升了程序的性能和安全性。我们有理由相信,在外部函数与内存API的引领下,Java将开启一个全新的编程时代,为开发者们带来更加高效、更加安全的编程体验。让我们共同期待Java在未来的辉煌成就!
24 11
|
4天前
|
安全 Java API
【本地与Java无缝对接】JDK 22外部函数和内存API:JNI终结者,性能与安全双提升!
【9月更文挑战第6天】JDK 22的外部函数和内存API无疑是Java编程语言发展史上的一个重要里程碑。它不仅解决了JNI的诸多局限和挑战,还为Java与本地代码的互操作提供了更加高效、安全和简洁的解决方案。随着FFM API的逐渐成熟和完善,我们有理由相信,Java将在更多领域展现出其强大的生命力和竞争力。让我们共同期待Java编程新纪元的到来!
26 11
|
1月前
|
存储 机器学习/深度学习 算法
Adam-mini:内存占用减半,性能更优的深度学习优化器
论文提出一种新的优化器Adam-mini,在不牺牲性能的情况下减少Adam优化器的内存占用。
78 10
Adam-mini:内存占用减半,性能更优的深度学习优化器
|
16天前
|
Java 容器
【Azure Function App】Java Function在运行中遇见内存不足的错误
【Azure Function App】Java Function在运行中遇见内存不足的错误
|
19天前
|
存储 缓存 NoSQL
Redis内存管理揭秘:掌握淘汰策略,让你的数据库在高并发下也能游刃有余,守护业务稳定运行!
【8月更文挑战第22天】Redis的内存淘汰策略管理内存使用,防止溢出。主要包括:noeviction(拒绝新写入)、LRU/LFU(淘汰最少使用/最不常用数据)、RANDOM(随机淘汰)及TTL(淘汰接近过期数据)。策略选择需依据应用场景、数据特性和性能需求。可通过Redis命令行工具或配置文件进行设置。
35 2
|
1月前
|
存储 安全 Java
JVM常见面试题(二):JVM是什么、由哪些部分组成、运行流程,JDK、JRE、JVM关系;程序计数器,堆,虚拟机栈,堆栈的区别是什么,方法区,直接内存
JVM常见面试题(二):JVM是什么、由哪些部分组成、运行流程是什么,JDK、JRE、JVM的联系与区别;什么是程序计数器,堆,虚拟机栈,栈内存溢出,堆栈的区别是什么,方法区,直接内存
JVM常见面试题(二):JVM是什么、由哪些部分组成、运行流程,JDK、JRE、JVM关系;程序计数器,堆,虚拟机栈,堆栈的区别是什么,方法区,直接内存
|
25天前
|
芯片 iOS开发 MacOS
Mac上运行windows软件-GPTK
Mac上运行windows软件-GPTK
119 1
|
26天前
|
安全 机器人 程序员
Windows 计划任务每天隔 3 小时运行一次批处理文件详细配置步骤
Windows 计划任务每天隔 3 小时运行一次批处理文件详细配置步骤
下一篇
DDNS