场景:
最近,在使用MemReduct内存自动释放工具,有些清理的内存区域有点不知道是啥?就查了总结一下:
这款软件主要用于按照设置的前提条件,自动释放可释放的内存,效果不错。但是在一些其中几个选项选中后,会提示:
这使用计算机当然不希望被冻结,尤其是自动清理的时候,所以,有3个选择项在自动清理的时候,我没有选择。那么,什么时候可以手动清理呢?到底清理的是什么呢?
1、standby list * (vista+) 指的主要是“备用内存”
什么是备用内存呢?大概是在win7等系列系统上,会自动使用未被已运行程序使用的物理内存,作为一些文件和相关数据的缓存。
运行中输入“resmon.exe”,打开“资源监视器”,可以看到:
纯蓝色的就是备用内存。我们可以试一下释放这部分内存,如下操作:
结果提示,内存释放0字节,但是,实际上纯蓝色的 “备用内存”,已经释放,见下图:
不过,一会儿它会自动又加载了,所以这个用处只是暂时增加“可用空白内存”
2、Modified Page list*(vista+)修改内存选项
什么是系统的修改内存呢?据说,是已经利用过数据的内存,系统即将它们转为可用内存,是介于“正在使用状态”和“空闲状态”之间的一种过渡状态。除非,出现内存泄露等原因,原则上不应该长时间过大。
使用“ Modified page list*(vistat+) ” 可以清理掉,即上图、下图中的“橙色内存块”部分
3、Combine memory lists (vin10+)压缩内存(合并内存)
这个压缩内存是一种内存使用方案,具体是,win10等系统会将暂不使用的数据内存,执行task任务计划压缩,存储在物理内存,这样可以部分避免全量数据占用物理内存过多。打开“任务管理器” 查看 压缩内存 的概况, 也可以“运行”打开:taskmsg,下图的163MB就是压缩内存占用的物理内存的总量。
点击处理“压缩内存列表”后,会变成如下:
使用这个清理,对我的计算机来说,效果也不怎么明显,提示已清理几十MB的话,结果没啥变化。不过,可以从处理的“内存压缩合并”的进程(Memory Compression)内存的working set明显看出字节变化:
另外,需要注意的是:
内存指标中,一般可以简单认为:Working set指的是运行程序及相关依赖所占用的物理内存量,Private Bytes是仅运行程序占用和申请的相关数据的虚拟内存占用量。
使用内存自动释放清理,如果Working set项指标过低,而Private Bytes指标偏高,那么,当再次切换到该程序、进程的时候,会出现卡顿,甚至超时后卡崩。