清理备用内存/关闭备用内存(备用内存占用过高且不自动释放)
清理备用内存/关闭备用内存
- 前言
- 备用内存介绍
- 清理备用内存
- 休眠再唤醒
- RAMMap
- 关闭备用内存
- 禁用SysMain服务
- 开启虚拟内存(可忽略)
- 总结
前言
大家在使用Win7及以上系统时(本文内容以Win10为例),会发现内存占用中有很大一部分是备用内存(已缓存内存),如下图(40G内存包含27G的备用内存)。但备用内存有时会占用过高且不自动释放,此时再打开新的大型软件就会因可用内存不足而无法运行(同时,已打开软件也可能会造成卡顿)。
因此,当备用内存占用过高时,在新打开大型软件之前,要清理备用内存,方法目前有2种,1种是电脑休眠再唤醒,另1种是使用RAMMap软件,这2种方法都能达到清理备用内存的目的。详情请见下文。
若想从根本上解决问题,即关闭备用内存,很遗憾,本人尝试过很多方案,无法彻底关闭备用内存,但可以通过更改一些系统设置,缓解备用内存的占用情况。详情请见下文。
备用内存介绍
注意: 备用内存与虚拟内存不同,若想了解虚拟内存,详见我的另一篇博客:Win系统设置虚拟内存 。
首先介绍一下备用内存,备用内存本来是空闲的内存,微软想让这部分内存也发挥作用,就把硬盘上常用的文件缓存到这里,无需从硬盘进行读取,以此提高性能。这部分缓存的内存就是备用内存。
若可用内存不足以运行新的任务,备用内存将会为新的任务释放空间。这个方案理论上是可行的,既提高了性能,也不会影响内存的使用。但问题在于,备用内存有时会占用过高且不会自动释放,据说是系统很久以来便存在的Bug,至今(Win11)也没有解决。
那么如何清理备用内存呢,2种方法(1种是电脑休眠再唤醒,另1中是使用RAMMap软件)见下文。
清理备用内存
休眠再唤醒
由于Win10系统默认隐藏了电脑休眠功能,所以要先开启休眠功能,开启方法详见我的另一篇博客:Win系统休眠 。
本方法如同字面意思,就是先让电脑休眠,再唤醒电脑,即可清空备用内存。由于休眠可以保存正在运行的任务,再次唤醒后可以继续工作,所以实用性比较高。
值得注意的是,休眠可以清空备用内存,但睡眠不会清空备用内存,因为睡眠不会对内存停止供电。
RAMMap
RAMMap官网:RAMMap
RAMMap是一款Windows物理内存分析的高级工具。
首先在RAMMap官网下载RAMMap,如下图:
将下载到的压缩包解压,移动到合适位置以便后续使用,推荐位置D:\Program Files NoInstall\RAMMap
,双击解压文件夹中的RAMMap.exe
文件即可打开软件,如下图:
打开软件并等待软件加载成功后,选择Empty - Empty Standby List
,即可清空备用内存,如下图:
关闭备用内存
上文已经提及,备用内存无法被彻底关闭,但可以通过更改一些系统设置,缓解备用内存的占用情况。有以下2个设置需要更改,分别为禁用SysMain
服务和开启虚拟内存。
禁用SysMain服务
右键桌面此电脑,点击管理
,在计算机管理
页面中选择服务和应用程序
中的服务
,找到SysMain
,可以发现它的作用是维护和提高一段时间内的系统性能,其中就包含备用内存。如下图:
因此要缓解备用内存的容量,需要将SysMain
服务禁用,双击该服务,在弹窗的常规
中先停止
服务,再将启动类型改为禁用
,最后点击确定
,如下图:
开启虚拟内存(可忽略)
虚拟内存在上文也有所提及,若想了解虚拟内存,详见我的另一篇博客:Win系统设置虚拟内存 。
若电脑内存足够,则无需开启。若电脑内存不是特别充足,则可按需开启。
在此电脑的高级系统设置中开启虚拟内存,设置为自动管理或固定大小都可以,如下图。最后重启电脑。
总结
备用内存功能无法被彻底关闭,但可以通过RAMMap软件进行清空,清空后备用内存会继续增加,暂时没有一劳永逸的方法。若有条件,可以增加内存条和内存容量,这样即使备用内存占用很多内存,也不影响使用。
清理备用内存/关闭备用内存(备用内存占用过高且不自动释放)相关推荐
- 内存占用过高,缓存不释放导致死机处理方案
故障现象: 1.某分行部署的某台服务器内存占用过高,导致死机: 2.代码层面检查暂未发现问题,服务器硬重启持续一段时间后(3-5天)再次占满. 发现问题: 赶往现场后进行检查,当时是一切正常的,今有D ...
- 内存管理-定时器循环、内存布局、tagged pointer、weak指针、copy、自动释放池
先上代码,我们平时用的定时器,cadisplaylink.nstimer,CADisplayLink.NSTimer会对target产生强引用,如果target又对它们产生强引用,那么就会引发循环引用 ...
- hyperv动态内存Linux,Linux 之动态分配内存方式
(1)malloc/free 函数 malloc()函数和free()函数是在堆中申请或释放内存空间的,其函数声明如下: #include extern void* malloc(size_t _si ...
- cocos2d-x内存自动释放机制
Cocos2d-x内存自动释放机制 本文引用自博客: 第七城市:http://www.th7.cn/Program/cp/201303/130531.shtml 首先在架构里面需要明白,如果使用new ...
- Javascript 内存(三):内存泄漏常见场景及分析
前言 内存泄漏问题,对于 Web H5 开发者来说,因为每次刷新页面,浏览器就会将当前页面的内存进行释放,影响较小.但是,对于持续不间断执行的程序,比如Nodejs.如果存在内存泄漏问题,那么内存占用 ...
- RAMMAP(运行内存清理工具)自动释放内存,并利用pyqt5制作图形界面
上一篇文章用python制作了一个自动清理内存的程序,利用cmd端口调用Rammap,不过只是做了一个托盘图标,这回用pyqt5做一个简单的图形界面,并实现对自动清理模式的一些设置 首先利用pyqt5 ...
- android 清理手机开启的所有程序,安卓内存机制详解 别清理释放RAM损害你的手机...
许多人喜欢在手机里面安装一个一键清理或者是XX优化大师.不知道大家有没有觉得,在一键清理后,手机打开应用的速度反而没有清理前快.这是为什么呢?今天我就给大家讲一下安卓的内存机制. 当一个程序放到后台时 ...
- android 手机内存其他文件在哪里,消失的手机内存去哪了?用它清理手机文件,告诉你手机内存的秘密...
原标题:消失的手机内存去哪了?用它清理手机文件,告诉你手机内存的秘密 从早前的1g,2g,到后来的8g,16g,32g,再到现在的128g,256g,512g,甚至于以后的1T,2T,手机内存不断变大 ...
- win10关闭快速启动_内存占用率过高怎么办?Win10电脑内存占用率很高的原因和解决方法...
内存占用率过高,是电脑十分常见的电脑故障,出现的现象就是什么软件还没有打开,内存占用了70%以上,甚至是99%,出现电脑明显卡顿的问题.不过想要解决内存占用率高不是简单的事情,因为可能性比较多,可能是 ...
最新文章
- AAAI 2020 | MaskGEC:通过动态掩蔽改善语法纠错
- 首次使用计算机鼠标键盘不能用,解决方案:如何解决无法使用计算机鼠标和键盘的问题?如果启动后无法使用鼠标和键盘该怎么办?...
- MyEclipse快捷键与插件大全
- mysql基础(九) 索引和视图
- JavaScript 技术篇-js检测原生对象类型实例演示,js的3种对象类型
- 压缩备份日志 java_自动压缩备份日志文件到指定备份目录脚本
- Anroid推送服务
- svg配合css3动画_带有Adobe Illustrator,HTML和CSS的任何网站的SVG动画
- 红橙Darren视频笔记 bsdiff bspatch 使用(Linux下)
- 开发者请注意!2020年的大前端发展趋势已出炉! | 原力计划
- mysql 表单记录主键重新从1开始排序
- 计算机电脑桌面怎么设置,老司机教你电脑屏保怎么设置
- 完美解决excel科学计数法导入数据库处理方法
- Win10子系统Ubuntu安装Thingworx8.5--1. WSL Ubuntu 安装
- 两款专业的远程桌面连接管理工具:RoyalTS 和 visionapp Remote Desktop (vRD)
- ucenter应用通信过程
- 如何判断是不是个maven项目
- 集合的基本操作和基本运算
- 苹果(MacOS)桌面应用程序 签名及分发教程
- 何训田介绍(二)——黄孩子