Comment faire pour utiliser l'Analyseur de mémoire en pool (Poolmon.exe) pour résoudre les problèmes de fuites de mémoire en mode noyau

Traductions disponibles Traductions disponibles
Numéro d'article: 177415 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

INTRODUCTION

Cet article explique comment utiliser l'utilitaire Analyseur de mémoire en pool, Poolmon.exe, comme un outil de résolution pour contrôler les balises de mémoire.

Poolmon affiche les données que le système d'exploitation collecte à propos des allocations de mémoire à partir des pools noyaux paginés et non paginés du système et des pools de mémoire utilisés pour les sessions Terminal Server. Les données sont regroupées par balise d'allocation de pool. Ces informations peuvent être utilisées par le Support technique de Microsoft pour rechercher des fuites de mémoire en mode noyau.

Une fuite de mémoire est provoquée par une application ou un processus qui s'alloue de la mémoire mais qui ne la libère pas lorsqu'elle ou il se ferme. Par conséquent, la mémoire disponible est intégralement utilisée avec le temps. Cette erreur entraîne fréquemment un dysfonctionnement du système d'exploitation.

Dans ce cas, les événements suivants peuvent être enregistrés dans le journal système :

ID d'événement : 2020
Source : Srv
Description : le Serveur n'a pas réussi à allouer de la mémoire paginée du pool système car celui-ci est vide.

ID d'événement : 2019
Source : Srv
Description : le serveur n'a pas réussi à allouer de la mémoire non paginée du pool système car celui-ci est vide.

Plus d'informations

La première section ci-dessous explique comment activer le mode balise pour l'utilisation de Poolmon. La seconde section ci-dessous explique comment rassembler les informations pour résoudre le problème à l'aide de Poolmon.

Activation du mode balise

Avant d'exécuter Poolmon, vous devez activer la fonctionnalité de balisage de pool, puis redémarrer votre ordinateur. La fonction de balisage de pool collecte et calcule les statistiques concernant la mémoire de pool triée par la valeur de balise de l'allocation de mémoire.

Remarque Il n'est pas nécessaire d'activer le balisage de pool dans Windows Server 2003 car il est activé par défaut.

Pour activer le balisage de pool sur un ordinateur Windows NT 4.0, Windows 2000 ou Windows XP, adoptez l'une des méthodes suivantes :

Méthode 1 : modification du Registre

Pour modifier la valeur de Registre qui active le mode balise pour Poolmon.exe, procédez comme suit :

Important Cette section, méthode ou tâche, contient des étapes vous indiquant comment modifier le Registre. Toutefois, des problèmes graves peuvent se produire si vous modifiez le Registre de façon incorrecte. Par conséquent, veillez à suivre ces étapes scrupuleusement. Pour plus de protection, effectuez une sauvegarde du Registre avant de le modifier. Vous serez alors en mesure de le restaurer en cas de problème. Pour plus d'informations sur la sauvegarde et la restauration du Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
322756 Comment faire pour sauvegarder et restaurer le Registre dans Windows
  1. Exécutez l'Éditeur du Registre.
  2. Recherchez la clé suivante dans le Registre :
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager
  3. Notez la valeur de GlobalFlag ou enregistrez la clé
    Session Manager
    .
  4. Double-cliquez sur la valeur GlobalFlag dans le volet droit.
  5. Attribuez-lui la valeur hexadécimale 0x00000400.

    Remarque Lorsque vous ajoutez la valeur d'indicateur globale 0x00000400, seul 0x400 s'affiche après son ajout. Il est important d'ajouter tous les zéros sinon certaines informations Poolmon ne seront pas affichées sur l'écran de sortie.
  6. Redémarrez votre ordinateur.
Remarque Une fois votre opération de débogage terminée, rétablissez la valeur GlobalFlag d'origine que vous avez notée à l'étape 3.

Méthode 2 : utilisation de l'utilitaire Gflags.exe.

Vous pouvez également recourir à l'utilitaire Gflags.exe (Global Flags Editor) d'édition des indicateurs globaux pour activer le balisage de pool. Gflags.exe est disponible dans le Kit de ressources de Windows NT 4.0 et dans le dossier \Support\Tools des CD-ROM Windows 2000, Windows XP et Windows Server 2003.

Remarque Parce que le balisage de pool est constamment activé dans Windows Server 2003, la case à cocher Enable Pool Tagging dans la boîte de dialogue Global Flags est grisée et les commandes pour activer ou désactiver le balisage de pool échouent.

Pour apporter les modifications à l'aide de Gflags.exe, procédez comme suit :
  1. Cliquez sur Démarrer, sur Exécuter, tapez gflags.exe, puis cliquez sur OK.
  2. Sélectionnez Enable Pool Tagging.
  3. Cliquez sur Apply, puis sur OK.
  4. Redémarrez votre ordinateur.
Remarque Lorsque le débogage est terminé, répétez les étapes ci-dessus pour désactiver le balisage de pool.

Collecte d'informations à l'aide de Poolmon

Poolmon affiche des informations de balise de pool dans une fenêtre de commande. Utilisez les touches de direction ou les touches Page précédente et Page suivante pour afficher la totalité des informations de balise renvoyées par l'outil.

Poolmon.exe est disponible dans le Kit de ressources de Windows NT 4.0 et dans le dossier \Support\Tools des CD-ROM Windows 2000, Windows XP et Windows Server 2003.

Pour copier et stocker les informations de balise, procédez comme suit. Répétez ces étapes pendant deux heures à 15 minutes d'intervalle. Ajoutez chaque mise à jour à la fin du fichier Bloc-notes.
  1. Cliquez sur Démarrer, pointez sur Paramètres, cliquez sur Panneau de configuration, puis double-cliquez sur Console.

    Remarque Pour Windows 2000, vous devez procéder comme suit :
    1. Cliquez sur Démarrer, sur Exécuter, tapez cmd, puis cliquez sur OK.
    2. Cliquez avec le bouton droit sur la barre de titre, puis cliquez sur Propriétés.
  2. Cliquez sur l'onglet Options, cliquez sur Mode d'édition rapide, puis sur Mode insertion.
  3. Cliquez sur l'onglet Mise en page, modifiez la valeur Taille de la mémoire tampon écran sur la valeur 99, puis cliquez sur OK.
  4. Cliquez sur Démarrer, pointez sur Programmes, puis cliquez sur Invite de commandes.
  5. Recherchez Poolmon.exe dans le dossier Support\Debug\plate-forme sur le CD Windows NT 4.0. Passez sur le lecteur et le dossier sur lequel se trouve Poolmon.exe. Sur le CD Windows 2000, Poolmon.exe se trouve dans le fichier Support.CAB. Support.CAB se trouve dans le dossier \Support\Tools.
  6. Tapez Poolmon.exe.
  7. Appuyez sur P jusqu'à ce que Poolmon affiche le "type" de la deuxième colonne et affiche la valeur paged.
  8. Appuyez sur B pour trier les colonnes de la plus large à la moins large.
  9. Sélectionnez tout le contenu à l'écran, puis appuyez sur ENTRÉE.
  10. Cliquez sur Démarrer, pointez sur Programmes, sur Accessoires, puis cliquez sur Bloc-notes.
  11. Dans le menu Edition, cliquez sur Coller.
  12. Répétez l'étape 7 pour rechercher la valeur nonpaged.
  13. Répétez les étapes 8 - 11 pour coller.
Poolmon.exe dispose également de quelques clés de commande qui trient la sortie pour vous. Appuyez sur la lettre indiquée ci-dessous pour effectuer l'opération. Il faut quelques secondes pour que chaque commande fonctionne. Voici une liste de quelques commandes :
P - Trie les balises selon les valeurs Paginé, Non paginé ou mixte. Notez que P permet de les faire défiler une à une.
B - Trie les balises par utilisation d'octets maximale.
M - Trie les balises par allocation d'octets maximale.
T - Trie les balises alphabétiquement par nom de balise.
E - Affiche le total Paginé, Non paginé en bas. Fait défiler.
A - Trie les balises par taille d'allocation.
F - Trie les balises par "libérations".
S - Trie les balises par les différences d'allocations et de libérations.
E - Affiche le total Paginé, Non paginé en bas. Fait défiler.
Q - Ferme.
Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
298102 Comment faire pour trouver des balises de pool qui sont utilisées par des pilotes tiers

Propriétés

Numéro d'article: 177415 - Dernière mise à jour: mardi 17 mai 2011 - Version: 7.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • 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 Édition familiale
  • 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 Professionnel
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 4.0 Édition Développeur
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
Mots-clés : 
kbhowto KB177415
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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