Windows虚拟内存不足问题的处理

作者阿里云代理 文章分类 分类:图文教程 阅读次数 已被围观 21

问题描述

一般而言,当系统缺少虚拟内存时会引起很多问题,包含但不限于如下现象。

  • 操作系统运行缓慢,甚至出现宕机,蓝色背景界面的情况。
  • 用户本地控制台输入用户名、密码后,无法登录到操作系统,卡在欢迎界面。
  • 无法远程桌面,提示”页面文件太小,无法完成操作”。
  • 安装服务失败,例如安装IIS、.NET Framework、FTP提示”资源不足”,或者安装进程卡住。
  • 安装三方服务,例如MySQL服务安装失败,或者安装完毕后无法启动。
  • Windows Update无法更新。
  • 系统抛出”虚拟内存不足”的报错,应用程序由于内存分配出现异常关闭的情况。
  • 打开服务器管理器提示“MMC在一个管理单元检测到错误”。
  • 服务器管理器控制台打开后自动关闭。

上述问题具体的报错图请参考更多信息

 

问题原因

出现上述系统虚拟内存耗尽的情况有如下可能性。

  • 系统物理内存资源不足。
  • 系统未配置paging file(页面文件)或者页面文件配置较小。
  • 系统存在内存泄露,即包含其它各类可能的核心资源泄露。
    提示:某些情况下,如 方法2:检查任务管理器 步骤所示,您可能发现系统仍然显示有可用的物理内存,但是仍然提示虚拟内存不足,这可能是系统Section资源消耗尽导致。微软官方Blog文章检查系统页面交换文件的使用也提到类似的情况。

 

详细信息

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

 

提示:本文仅供用户使用Windows实例时参考,文中引用的微软官方链接,版权归属微软。请注意文章适用的操作系统范围,以及微软Windows产品迭代或者文档未及时更新可能带来的问题,阿里云官方不对引用的微软官方链接内容负责。

 

在Windows操作系统中,内核以及应用程序是通过虚拟内存来进行内存管理和使用。微软官方文章简单介绍了虚拟内存的概念。由于物理内存是有限的资源,Windows引入了 Paging File(页面文件)实现虚拟内存。以32位操作系统为例,每个进程有自己2GiB 专用的用户态虚拟地址空间。当现有的所有进程正在使用的内存超出了可用的物理内存时,操作系统将页(4KiB片)的一个或多个虚拟地址空间移动到计算机的硬盘,而后释放物理内存用于其他用途。在Windows系统中,这些被移动出物理内存的页(paged out)存储在一个或多个文件(Pagefile.sys页面文件)分区的根目录中。

 

相比于Linux系统,Windows系统由于图形化界面操作相对容易而受到许多用户的青睐,在购买ECS实例时,需要至少1G内存才能选择Windows系统,于是乎大部分用户就选择1G内存,这1G内存对于系统运行来说是足够了,但是在配置环境、安装更多软件后就会出现内存不足的情况。

 

环境检查

一般而言,出现操作系统虚拟内存不足时,有如下2种方法检查问题。

 

方法一:检查系统日志

  1. 打开运行窗口,输入 eventvwr.exe,打开事件查看器,在系统日志中发现”Resource-Exhaustion-Detector”出现2004错误。
  2. Windows成功诊断出虚拟内存不足的情况。部分程序使用了大部分虚拟内存,例如mysqld.exe (1320)使用了2801614848字节,svchost.exe(808)使用了422494208字节,tomcat8.exe(2744)使用了336797696字节。

 

方法二:检查任务管理器

打开任务管理器,单击 性能,查看已提交内存与虚拟内存的比例。如下图所示,提交(MB)等于已提交虚拟内存/虚拟内存上限,即图中3790/4093,已经超过80%,而根据微软官方文档说明,系统内存不足,需要增加更多的内存。

 

解决方法

在这种情况下,请尝试如下方案解决问题。

  • 方法一:由于默认系统没有配置Paging File,请您手工配置paging file,参考如何配置Windows系统的虚拟内存

     

    进行配置。
  • 方法二:如果配置Paging File后,仍然出现内存不足情况,有如下2种可能。
    • 应用程序对内存要求高,请增大实例规格,调高ECS的物理内存,同时相应的增加paging file。
    • 请排查请检查是否有内存泄露,具体请参考如下微软官方博客的排查方法。
      • 检查系统页面交换文件的使用
      • 内存问题排错概要 – 第一部分
      • 内存问题排错概览 – 第二部分

         

        如果您有其他问题,可以联系汉中创云互联阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询欢迎咨询.gif

本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。