http://support.microsoft.com/kb/312362/

有几种因素可能会耗尽页面缓冲池内存的供应。启用池标记并以不同的时间间隔拍摄池快照可以帮助您了解哪个驱动程序正在使用页面缓冲池内存。如果池快照指出 MmSt 标签(Mm 区域对象原型 PTE)使用的池内存最多,并且页面缓冲池内存已耗尽,或者系统在记录出错事件 2020,则很可能是因为服务器上打开了大量的文件。默认情况下,当系统达到总页面缓冲池大小的 80% 时,内存管理器会设法修整分配的页面缓冲池内存。根据系统配置,计算机上可能的最大页面缓冲池内存可以是 343MB,而此数量的 80% 就是 274MB。如果内存管理器的修整速度跟不上需求,就可能发生本文“症状”一节中列出的事件。通过优化内存管理器,使它在更早的时间(比如当使用的页面缓冲池内存达到 60% 时)开始修整过程,在突发的高峰使用期间就可以满足页面缓冲池的需求,从而避免出现页面缓冲池内存不足的情况。

 

警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证您可以解决这些问题。修改注册表需要您自担风险。
以下优化建议在减轻此问题方面很有帮助:

  1. 启动注册表编辑器 (Regedt32.exe)。
  2. 在注册表中找到并单击以下注册表项:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Memory Management
  3. 在“编辑”菜单上,单击“添加数值”,然后添加以下注册表值:
     
    数值名称:PoolUsageMaximum
    数据类型:REG_DWORD
    基数:十进制
    数值数据:60
    将该值设置为 60 可以通知内存管理器在达到 PagedPoolMax 的 60% 而不是默认设置 80% 时开始修整过程。如果 60% 的阈值不足以处理活动中的高峰,请将此设置减小到 50% 或 40%。
     
    数值名称:PagedPoolSize
    数据类型:REG_DWORD
    基数:十六进制
    数值数据:0xFFFFFFFF
    将 PagedPoolSize 设置为 0xFFFFFFFF 可为计算机分配最大的页面缓冲池以取代其他资源。
  4. 退出注册表编辑器。
  5. 重新启动服务器,以使更改生效