如何使用記憶體集區監視器 (Poolmon.exe) 來疑難排解核心模式記憶體遺漏 (Memory Leak)

文章翻譯 文章翻譯
文章編號: 177415 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

簡介

本文將告訴您,如何使用記憶體集區監視器 」 公用程式,Poolmon.exe,作為疑難排解的工具來監視記憶體標記。

Poolmon 顯示從系統分頁和未分頁的核心集區,用於終端機服務工作階段的記憶體集區的相關操作系統會收集關於記憶體配置的資料。集區配置標籤已群組資料。這項資訊可由 Microsoft 技術支援部門以尋找核心模式記憶體遺漏 (Memory Leak)。

由應用程式或處理程序,會配置記憶體供使用,但是,不會釋放記憶體,應用程式或處理程序完成時,將造成記憶體遺漏。因此,經過一段時間完全使用可用的記憶體。經常,這種情況會導致系統停止運作正常。

在這種情況下系統記錄檔中可能會記錄下列事件:

事件識別碼: 2020年
來源: SRV
描述: 伺服器無法從系統分頁集區配置,因為是空的集區。

事件識別碼: 2019年
來源: SRV
描述: 伺服器無法配置來自未分頁系統因為集區是空的集區。

其他相關資訊

遵循第一節說明如何啟用使用 Poolmon 標記模式。第二個區段說明如何收集使用 Poolmon 疑難排解的資訊。

啟用標記模式

在執行 PoolMon 前您必須啟用集區標籤,然後重新啟動您的電腦。標記功能集區會收集及計算有關排序標籤值的記憶體配置的集區記憶體統計資料。

附註您不需要啟用 Windows Server 2003 中標記為啟用預設的集區。

若要以便為加上一個 Windows NT 4.0 為基礎的集區 Windows 2000 基礎或 Windows XP 架構電腦會使用下列方法之一:

方法 1: 編輯登錄

如果要變更登錄值,讓標記模式為 Poolmon.exe,請依照下列步驟執行。

重要這個區段、 方法或任務包含告訴您如何修改登錄的步驟。然而,如果您不當修改登錄,可能會發生嚴重的問題。因此,執行這些步驟時請務必小心。為加強保護,修改登錄之前,請務必將它備份起來。以後您就可以在發生問題時還原登錄。如需有關如何備份和還原登錄的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
322756如何備份和還原在 Windows 登錄
  1. 執行 [登錄編輯程式]。
  2. 在登錄中找到下列機碼:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager
  3. 寫入 GlobalFlag,值分解,或儲存
    Session Manager
    金鑰。
  4. 連按兩下 GlobalFlag 值在右邊窗格中。
  5. 將值變更為 0x00000400 十六進位。

    附註當您新增全域旗標值 0x00000400 時,它只會出現為它加入後 0x400。重要新增前置零的所有或部分 Poolmon 資訊將不會顯示在 [輸出] 畫面上。
  6. 重新啟動電腦。
附註如果您正在完成 [GlobalFlag 數值回原來的值,您已經指示要在步驟 3 中記下的偵錯,變更。

方法 2: 使用 Gflags.exe 公用程式

您也可以使用全域旗標編輯器 (Gflags.exe) 公用程式來啟用集區標記。在 Windows NT 4.0 資源工具箱 」 及 Windows 2000、 Windows XP 和 Windows Server 2003 光碟片] 中的 [\Support\Tools] 資料夾中使用 Gflags.exe。

附註因為永久啟用 Windows Server 2003 中集區標籤,全域旗標] 對話方塊中,[啟用集區章節] 核取方塊以灰色顯示,而且若要啟用或停用集區標記的命令失敗。

藉由使用 Gflags.exe 進行的變更,請依照下列步驟執行:
  1. 按一下 [開始]、 按一下 [執行]、 輸入 gflags.exe,然後按一下 [確定]]。
  2. 選取 [啟用集區章節
  3. 按一下 [套用],然後再按一下 [確定]
  4. 重新啟動電腦。
附註如果您正在完成偵錯,重複上述步驟,停用集區標記。

使用 Poolmon 來收集資訊

PoolMon 顯示命令視窗內的集區標籤資訊。使用方向鍵或 PAGE UP 和 PAGE DOWN 鍵顯示工具所傳回的所有標記資訊。

在 Windows NT 4.0 資源工具箱 」 及 Windows 2000、 Windows XP 和 Windows Server 2003 光碟片] 中的 [\Support\Tools] 資料夾中使用 Poolmon.exe。

使用下列步驟來複製和儲存標記資訊。在 15 分鐘的時間間隔,兩個小時內重複這些步驟。將每個更新附加至 「 記事本 」 檔案的結尾。
  1. 按一下 [開始]、 指向 [設定]、 按一下 [控制台],然後再按兩下 [主控台]。

    附註針對 Windows 2000 中,您必須執行下列步驟執行:
    1. 按一下 [開始],再按一下 [執行]、 輸入 cmd,] 然後再按一下 [確定]
    2. [標題] 列上按一下滑鼠右鍵,然後按一下 [內容]
  2. 按一下 [選項] 索引標籤,按一下 [快速編輯模式,然後再按一下 [插入模式
  3. 按一下 [版面配置] 索引標籤,將 螢幕緩衝區大小] 值變更為 99,變更然後按一下 [確定]
  4. 按一下 [開始],指向 [程式集,然後再按一下 [命令提示字元
  5. 在 Windows NT 上的 [Support\Debug\ platform] 資料夾中找到 Poolmon.exe 4.0 版 CD。變更磁碟機及 Poolmon.exe 所在的資料夾。在 Windows 2000 CD Poolmon.exe 處於 Support.CAB 檔案。Support.CAB 位於 \Support\Tools 資料夾之下。
  6. 型別 Poolmon.exe
  7. 按下 P,直到 Poolmon 顯示第二個資料行類型 」,並顯示 分頁 的值。
  8. 按下 B 排序資料行從最大到最小。
  9. 選取整個螢幕] 內容,然後再按下 ENTER 鍵。
  10. 按一下 [開始],指向 [程式集]、 指向 [附屬應用程式,然後再按一下 [記事本]。
  11. 編輯] 功能表上按一下 [貼上]。
  12. 重複步驟 7 尋找 「 值 未分頁
  13. 重複步驟 8-11 貼上。
Poolmon.exe 也有幾個命令鍵,為您排序輸出。按字母指示之下執行的作業。花幾秒的時間來處理每個命令。以下是幾個命令的清單:
P 排序標記分頁,依清單未-分頁或混合。請注意 P 循環每一個。
B 會將標籤依最大位元組使用量。
M 將標籤依最大位元組配置。
T 依標記名稱依字母順序排序標籤。
E 顯示分頁跨底部非分頁總計。循環。
A 會將標籤依配置大小。
F 會依 「 釋放 」 標籤。
S 排序標籤所配置的差異,並可釋放。
E 顯示分頁跨底部非分頁總計。循環。
問: 結束。
如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
298102如何尋找協力廠商驅動程式所使用的集區標籤

屬性

文章編號: 177415 - 上次校閱: 2008年2月25日 - 版次: 6.1
這篇文章中的資訊適用於:
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows XP Home Edition (家用版)
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Media Center Edition 2005 Update Rollup 2
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0, Terminal Server Edition
  • Microsoft Windows NT Server, Enterprise Edition
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
關鍵字:?
kbmt kbhowto KB177415 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:177415
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com