Partager via


Vidage de mémoire en direct du Gestionnaire des tâches

Aperçu

Le Gestionnaire des tâches peut être utilisé pour créer un vidage mémoire du noyau actif. Cela s’ajoute à la fonctionnalité existante d’utilisation du Gestionnaire de tâches pour créer un vidage de mémoire d’un processus spécifique.

Un vidage de mémoire du noyau actif contient un instantané cohérent de la mémoire du noyau (et éventuellement, d’autres types de mémoire) et l’enregistre dans un fichier de vidage. Contrairement à d’autres méthodes pour générer manuellement un vidage de mémoire du noyau, cette méthode n’entraîne pas de blocage du système.

Les programmeurs ayant accès aux fichiers de symboles appropriés et au code source peuvent analyser le fichier de vidage pour examiner l’état du système et diagnostiquer les problèmes.

L’option permettant de créer un vidage de mémoire du noyau actif est disponible sur le processus système , de la même façon qu’une option permettant de créer un fichier de vidage de mémoire est disponible sur les processus en mode utilisateur.

Un vidage complet de la mémoire du noyau actif contient la mémoire du noyau actif, avec la possibilité d'inclure la mémoire de l'hyperviseur et la mémoire en mode utilisateur. Les options permettant de capturer des hyperviseurs et des pages utilisateur sont disponibles pour les vidages de noyau actif complets. Par ailleurs, un vidage de pile de mémoire de noyau est un fichier plus petit, limité aux états du processeur du noyau et à toutes les piles de threads de noyau.

Pour obtenir des informations générales sur les vidages de mémoire vive du noyau, consultez la Référence de code pour les vidages de mémoire vive du noyau.

La fonctionnalité de vidage en direct du Gestionnaire des tâches a été publiée au début de 2023 et a été disponible pour la première fois dans les builds Windows Insider Preview dans le canal Canary (build 25276 et versions ultérieures) et dev Channel (build 23419 et versions ultérieures) et, en juillet 2023, est disponible dans la version 22621.1992 et ultérieures du système d’exploitation Windows.

Créer un vidage de mémoire du noyau actif du système à l’aide du Gestionnaire des tâches

Pour capturer un vidage de mémoire du noyau en direct à l’aide du Gestionnaire des tâches, procédez comme suit.

  1. Démarrez le Gestionnaire des tâches Windows.

  2. Accédez aux processus ou aux détails.

  3. Recherchez le processus système .

  4. Cliquez avec le bouton droit et sélectionnez Créer un fichier de vidage mémoire du noyau en direct.

  5. Dans le menu déroulant, sélectionnez un vidage complet de la mémoire du noyau actif ou un vidage de la mémoire des piles du noyau.

Capture d’écran de l’interface utilisateur de vidage de mémoire active du Gestionnaire de tâches.

Création d’un vidage de mémoire pour un processus en mode utilisateur

Une procédure similaire est utilisée dans le Gestionnaire des tâches pour créer un vidage de mémoire d’un processus. Mettez en surbrillance le processus en mode utilisateur souhaité, puis cliquez avec le bouton droit, puis sélectionnez Créer un fichier de vidage de mémoire. Pour plus d’informations sur les fichiers de vidage en mode utilisateur, consultez User-Mode Fichiers de vidage.

Options avancées du fichier de vidage de mémoire du noyau actif

Les options de fichier de vidage mémoire du noyau actif sont disponibles sous les paramètres du Gestionnaire de tâches.

Capture d’écran de l’interface utilisateur des options avancées de vidage mémoire dynamique du Gestionnaire de tâches.

Le bouton supérieur rétablit les paramètres de vidage de mémoire du noyau en direct à leurs valeurs par défaut.

Lorsque l’option Annuler en cas de pression de la mémoire est sélectionnée, le processus de vidage en direct sera arrêté si la disponibilité de la mémoire est jugée insuffisante. Il s'agit du paramètre par défaut destiné à minimiser l'impact potentiel de la capture du vidage du noyau en direct sur la réactivité du système.

Les paramètres du fichier de vidage mémoire dynamique du noyau fournissent plusieurs options pour les informations à inclure dans le vidage de la mémoire.

  • Capturer des pages de mémoire Hyperviseur (avec ou sans pages non essentielles)
  • Capturer des pages utilisateur

L’ajout d’informations supplémentaires au fichier de vidage augmente sa taille et utilise une mémoire supplémentaire pendant l’enregistrement du vidage de la mémoire.

Capturer les pages de mémoire de l'Hyperviseur

Sélectionnez l’option Capturer les pages de mémoire de l'hyperviseur pour capturer les régions de mémoire utilisées par l’hyperviseur afin de prendre en charge les Hyper-V et les machines virtuelles. Pour plus d’informations , consultezHyper-V sur Windows.

Vous pouvez inclure ou pas des pages de mémoire de l'hyperviseur non-essentielles.

Capturer des pages utilisateur

Activez les pages utilisateur de capture si le problème que vous résolvez nécessite une mémoire en mode utilisateur.

Pour obtenir des informations générales sur l’utilisation de la mémoire et de la page Windows, consultez Windows Internals by Pavel Yosifovich, Alex Ionescu, Mark Russinovich et David Salomon.

Emplacement du fichier de vidage de mémoire dynamique

Une boîte de dialogue s'affiche une fois le vidage de mémoire terminé, indiquant l'emplacement du fichier de vidage .dmp mémoire. Cliquez sur Ouvrir l’emplacement du fichier pour ouvrir le dossier.

Vidages de mémoire du noyau en direct

Les vidages de mémoire du noyau actif par défaut sont stockés ici.

%LocalAppData%\Microsoft\Windows\TaskManager\LiveKernelDumps

%LocalAppData% est généralement C:\Users\<YourUserName>\AppData\Local\

Vidages de mémoire en mode utilisateur en direct

Les fichiers de vidage mémoire en mode utilisateur en direct sont stockés dans le répertoire %localappdata%\Temp, qui se trouve généralement dans le répertoire Utilisateurs.

C:\Users\<YourUserName>\AppData\Local\Temp

Résolution des problèmes lors de la prise d'un vidage de mémoire en direct

Si le vidage en mémoire active retourne une erreur, vérifiez le message d’erreur pour plus d’informations. Par exemple:

  • Le Gestionnaire des tâches doit s’exécuter en tant qu’utilisateur de niveau Administrateur.

  • Si vous rencontrez des problèmes de délai d'expiration, essayez d'effectuer à nouveau le dump dans quelques minutes.

  • Attendez que le vidage demandé soit terminé avant de prendre des vidages de mémoire supplémentaires.

  • Il est possible que la création du vidage de mémoire du noyau en direct réussisse, mais pourrait ne pas contenir le contenu complet de la mémoire. La capture nécessite temporairement suffisamment de mémoire physique libre disponible pour contenir une copie de la mémoire à écrire dans le fichier de vidage. La fermeture d’applications inutiles ou la désactivation de la capture de pages mémoire hyper-V et en mode utilisateur peuvent augmenter la quantité de mémoire qui peut être enregistrée dans le fichier de vidage.

Analyse des fichiers de vidage de mémoire en temps réel

Lorsqu’un vidage de mémoire dynamique se produit, le fichier de vidage peut être analysé à l’aide des mêmes techniques que celles utilisées pour d’autres fichiers de vidage de mémoire. Pour comprendre le contenu de la mémoire lors d’une défaillance, la connaissance des registres de mémoire processeur et de la programmation d’assembly est généralement requise. En outre, l’accès au code source défaillant permet de résoudre le problème par le développeur.

Pour plus d’informations, consultez :

Code de vérification des bogues : 0x161 - LIVE_SYSTEM_DUMP

Le code de vérification des bogues d’un vidage de mémoire en direct du Gestionnaire de tâches est Bug Check 0x161: LIVE_SYSTEM_DUMP.

Voir aussi