首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Windows Server 2008 R2 內存泄漏排查:MmSt 標籤持續增長

     編輯:程式設計綜合問答

現象

使用 PoolMon 監測發現內核池標籤 MmSt 持續增長,導致系統可用內存下降。

MmSt 含義

MmSt 代表 Memory Manager Section Tracker,用於跟蹤內存映射節區(Section Objects,即文件映射/共享內存)。增長通常意味著:

  • 大量文件映射對象(CreateFileMapping/MapViewOfFile)未正確關閉(CloseHandle/UnmapViewOfFile)。
  • 驅動程序或系統組件泄漏 Section 對象引用。
  • 防病毒/備份軟件頻繁掃描大文件導致映射對象激增。

排查步驟

  1. 參考微軟官方博客:Getting to know the MmSt pool tag。
  2. 使用 !pool、!poolused 內核調試命令定位分配調用棧。
  3. 檢查第三方驅動、過濾驅動(防毒、備份、加密)是否為罪魁禍首,嘗試卸載驗證。
  4. 若為自開發驅動/服務,審查 Section 對象生命周期管理,確保每個 MmCreateSection/ZwCreateSection 有對應釋放。

緩解措施

重啟可暫時恢複,根治需定位具體分配者並修復泄漏代碼或更新問題驅動。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved