Windows7系统内存在页面内存修改处被耗尽

发布时间:  2015-10-22 浏览次数:  316 下载次数:  0
问题描述
【适用版本】:FusionAccess V100R005C10、FusionSphere V100R003C10各版本

1、FusionCompute上出现虚拟机内存占用超过阀值告警。

2、通过VNC登录虚拟机后,发现虚拟机内部出现很多的应用程序错误提示框。

图 1



3、通过任务管理器,打开系统资源管理器,显示内存信息如下:

图 2



4、重启虚拟机后,经过一个晚上,又会出现内存阀值告警。
告警信息
虚拟机内存占用超过阀值。
处理过程
1、在正常机器上的内存占用情况如下,4G内存的机器“物理内存”应该在2.8G左右。

图 3



2、从图2和图3中的物理内存信息对比来看,4G的物理内存,在图2中显示仅约有1G,另外的1.8G有可能是“核心内存分页/非分页内存泄露(内核态)”或“应用程序内存泄露(用户态)”。

3、在任务管理器的“性能”选项卡,查看“核心内存”值正常,平均在200MB以内。

4、在任务管理器的“进程”选项卡,查看“内存(专用工作集)”和“提交大小”两列的值均未有比较大的数据值,两列数据分别累加后的值也在正常范围内。

5、由此推断该内存泄露与以往常见的类别不同,借助工具Process Explorer查看“系统信息”中的内存情况时,发现如下位置的信息与正常机器的差别很大:Paging Lists中的Modified一行大约有1.8G,正常机器应该在100MB以内。

正常系统信息位置图示:



6、Paging List代表页面文件,从图中无法直接看出是哪个程序导致,怀疑可能与进程“页面错误”过多有关。

7、在任务管理器中,在菜单“查看”->“选择列”,勾选“页面错误”,发现存在一个进程“RFService.exe”进程的“页面错误”达到10多亿,而其他进程最大不到10万。

8、结束“RFService.exe”进程后,内存占用立刻降到20%左右,因此断定该进程导致内存泄露。

9、“RFService.exe”进程是通过Windows 服务启动的,它实际上是一个Foxmail的应用插件。
解决方案
禁用“RFService.exe”进程对应的“RIService”服务。
建议与总结
禁用内存泄露的程序服务,需要先在一台用户机器上验证是否会影响实际使用。

END