Partager via


Résolution des problèmes avancés pour les blocages Windows

Cet article explique comment résoudre les problèmes de blocage sur les ordinateurs et serveurs Windows. Il fournit également des méthodes pour collecter des données qui aideront les administrateurs ou les développeurs de logiciels à diagnostiquer, identifier et résoudre ces problèmes.

Note

Les produits tiers mentionnés dans le présent article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute garantie, implicite ou autre, concernant les performances ou la fiabilité de ces produits.

S’applique à : Windows 10

Identifier le problème

  • Quel ordinateur est gelé ? Par exemple, l’ordinateur concerné est un serveur physique ou un serveur virtuel.
  • Quelle opération s’est produite quand elle s’est figée ? Par exemple, ce problème se produit lorsque vous arrêtez.
  • À quelle fréquence les erreurs se produisent-elles ? Par exemple, ce problème se produit tous les soirs à 17 h.
  • Sur combien d’ordinateurs ce gel se produit-il ? Par exemple, tous les ordinateurs ou un seul ordinateur.

Résoudre les problèmes de gel

Pour résoudre les problèmes de gel, vérifiez l’état actuel de votre ordinateur et suivez l’une des méthodes suivantes.

Pour l’ordinateur qui est toujours en cours d’exécution dans un état figé

Si l’ordinateur physique ou la machine virtuelle est toujours gelé, utilisez une ou plusieurs des méthodes suivantes pour la résolution des problèmes :

  • Essayez d’accéder à l’ordinateur via une connexion Bureau à distance.
  • Utilisez un compte de domaine ou un compte d’administrateur local pour vous connecter à l’ordinateur avec la solution d’accès à distance du fabricant du matériel. Par exemple, Dell Remote Access Card (DRAC), HP Integrated Lights-Out (iLo) ou IBM Remote Supervisor Adapter (RSA).
  • Testez le test ping sur l’ordinateur. Recherchez les paquets supprimés et une latence réseau élevée.
  • Accédez aux partages d’administration, par exemple \\ServerName\c$.
  • Appuyez sur Ctrl+Alt+Supprimer et vérifiez la réponse.
  • Essayez d’utiliser les outils d’administration à distance Windows. Par exemple, gestion des ordinateurs, Gestionnaire de serveur et Wmimgmt.msc.

Pour l’ordinateur qui n’est plus figé

Si l’ordinateur physique ou la machine virtuelle s’est gelé, mais s’exécute maintenant dans un bon état, utilisez une ou plusieurs des méthodes suivantes pour la résolution des problèmes.

Pour un ordinateur physique

  • Passez en revue les journaux système et application à partir de l’ordinateur qui rencontre le problème. Vérifiez les journaux des événements pour l’ID d’événement approprié :

    • Journal des événements d’application : Erreur d’application, qui suggère un incident ou un processus système pertinent
    • Journaux des événements système, ID d’événement d’erreur Service Control Manager pour les services système critiques
    • ID d’événement d’erreur 2019/2020 avec Srv/Server source
  • Générez un rapport diagnostics système en exécutant perfmon /report.

Pour une machine virtuelle

  • Passez en revue les journaux système et application de l’ordinateur qui rencontre le problème.
  • Générez un rapport diagnostics système en exécutant perfmon /report.
  • Vérifiez l’historique du système dans les outils de supervision de gestion virtuelle.

Collecter des données pour les problèmes de gel

Pour collecter des données pour un serveur gelé, vérifiez le tableau suivant et utilisez une ou plusieurs des méthodes suggérées.

Type d’ordinateur et état Méthode de collection de données
Un ordinateur physique qui s’exécute dans un état figé Utilisez un fichier de vidage de mémoire pour collecter des données. Ou utilisez la méthode 2, 3 ou 4. Ces méthodes sont répertoriées plus loin dans cette section.
Un ordinateur physique qui n’est plus figé Utilisez la méthode 1, 2, 3 ou 4. Ces méthodes sont répertoriées plus loin dans cette section. Utilisez le moniteur de pool pour collecter des données.
Machine virtuelle en cours d’exécution dans un état figé Hyper-V ou VMware : utilisez un fichier de vidage de mémoire pour collecter des données pour la machine virtuelle qui s’exécute dans un état figé.
XenServer : Utilisez la méthode 1, 2, 3 ou 4. Ces méthodes sont répertoriées plus loin dans cette section.
Machine virtuelle qui n’est plus figée Utilisez la méthode 1, 2, 3 ou 4. Ces méthodes sont répertoriées plus loin dans cette section.

Méthode 1 : vidage de mémoire

Important

Suivez attentivement les étapes décrites dans cette section. De graves problèmes peuvent se produire si vous modifiez le Registre de façon incorrecte. Avant de le modifier, sauvegardez le Registre afin de pouvoir le restaurer en cas de problème.

Un fichier de vidage de mémoire complet enregistre tout le contenu de la mémoire système lorsque l’ordinateur s’arrête de façon inattendue. Un fichier de vidage de mémoire complet peut contenir des données provenant de processus en cours d’exécution lorsque le fichier de vidage de mémoire a été collecté.

Si l’ordinateur n’est plus figé et s’exécute maintenant dans un bon état, procédez comme suit pour activer le vidage de la mémoire afin de pouvoir collecter le vidage de la mémoire lorsque le problème de gel se produit à nouveau. Si la machine virtuelle est toujours en cours d’exécution dans un état figé, procédez comme suit pour activer et collecter le vidage de la mémoire.

Note

Si vous disposez d’une fonctionnalité de redémarrage activée sur l’ordinateur, telle que la fonctionnalité de redémarrage automatique du système (ASR) dans les ordinateurs Compaq, désactivez-la. Ce paramètre se trouve généralement dans le BIOS. Avec cette fonctionnalité activée, si le BIOS ne détecte pas de pulsations à partir du système d’exploitation, il redémarre l’ordinateur. Le redémarrage peut interrompre le processus de vidage.

  1. Assurez-vous que l’ordinateur est configuré pour obtenir un fichier de vidage de mémoire complet.

    1. Accédez à Exécuter et entrez Sysdm.cpl, puis appuyez sur Entrée.
    2. Dans Propriétés système, sous l’onglet Avancé, sélectionnez Paramètres de performances>avancés>. Sélectionnez Modifier pour vérifier ou modifier la mémoire virtuelle.
    3. Revenez aux paramètres avancés> des propriétés>système au démarrage et à la récupération.
    4. Dans la section Écrire des informations de débogage, sélectionnez Vider la mémoire.
    5. Sélectionnez Remplacer un fichier existant.
    6. Vérifiez qu’il existe un fichier de pagination (pagefile.sys) sur le lecteur système et qu’il est d’au moins 100 Mo sur la RAM installée (taille initiale et maximale).
    7. Assurez-vous qu’il y a plus d’espace disponible sur le lecteur système qu’il n’y a de RAM physique.
  2. Pour permettre au système de générer un fichier de vidage à l’aide du clavier, activez la valeur de CrashOnCtrlScroll Registre.

    1. Ouvrez l’Éditeur du Registre, puis recherchez les clés de Registre suivantes :

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
    2. Créez l’entrée de Registre suivante CrashOnCtrlScroll dans les deux clés de Registre :

      • Nom de la valeur : CrashOnCtrlScroll
      • Type de données : REG_DWORD
      • Valeur : 1
    3. Fermez l’Éditeur du Registre et redémarrez l’ordinateur.

  3. Sur certains ordinateurs physiques exécutant des versions antérieures de Windows, vous pouvez générer une interruption non clé (NMI) à partir d’une fonctionnalité d’interface web telle que DRAC, iLo ou RSA. Toutefois, par défaut, ce paramètre arrête le système sans créer de vidage de mémoire.

    Note

    Pour les versions actuellement prises en charge de Windows, la NMICrashDump clé de Registre n’est plus nécessaire. Une instance NMI provoque une erreur d’arrêt qui suit une collection de données de vidage de mémoire.

  4. Lorsque l’ordinateur présente le problème, maintenez la touche Ctrl enfoncée vers la droite, puis appuyez deux fois sur la touche De verrouillage de défilement pour générer un fichier de vidage de mémoire.

    Note

    Par défaut, le fichier de vidage se trouve dans le chemin d’accès suivant : %SystemRoot%\MEMORY. DMP.

Méthode 2 : Vérification de la santé des données

Utilisez l’utilitaire de vérification de vidage (Dumpchk.exe) pour lire un fichier de vidage de mémoire. Il peut également vérifier que le fichier a été créé correctement et n’est pas endommagé ou non valide.

Découvrez comment utiliser Dumpchk.exe pour vérifier vos fichiers de vidage :

Méthode 3 : Analyseur de performances

Vous pouvez utiliser Windows Analyseur de performances pour examiner comment les programmes que vous exécutez affectent les performances de votre ordinateur, en temps réel et en collectant les données de journal pour une analyse ultérieure. Pour créer des regroupements de journaux de suivi des événements et des compteurs de performances sur des systèmes locaux et distants, exécutez les commandes suivantes dans une invite de commandes en tant qu’administrateur :

Logman create counter LOGNAME_Long -u DOMAIN\USERNAME * -f bincirc -v mmddhhmm -max 500 -c "\\COMPUTERNAME\LogicalDisk(*)\*" "\\COMPUTERNAME\Memory\*" "\\COMPUTERNAME\Network Interface(*)\*" "\\COMPUTERNAME\Paging File(*)\*" "\\COMPUTERNAME\PhysicalDisk(*)\*" "\\COMPUTERNAME\Process(*)\*" "\\COMPUTERNAME\Redirector\*" "\\COMPUTERNAME\Server\*" "\\COMPUTERNAME\System\*" "\\COMPUTERNAME\Terminal Services\*" "\\COMPUTERNAME\Processor(*)\*" "\\COMPUTERNAME\Cache\*" -si 00:05:00
Logman create counter LOGNAME_Short -u DOMAIN\USERNAME * -f bincirc -v mmddhhmm -max 500 -c "\\COMPUTERNAME\LogicalDisk(*)\*" "\\COMPUTERNAME\Memory\*" "\\COMPUTERNAME\Network Interface(*)\*" "\\COMPUTERNAME\Paging File(*)\*" "\\COMPUTERNAME\PhysicalDisk(*)\*" "\\COMPUTERNAME\Process(*)\*" "\\COMPUTERNAME\Redirector\*" "\\COMPUTERNAME\Server\*" "\\COMPUTERNAME\System\*" "\\COMPUTERNAME\Terminal Services\*" "\\COMPUTERNAME\Processor(*)\*" "\\COMPUTERNAME\Cache\*" -si 00:00:10

Ensuite, vous pouvez démarrer ou arrêter le journal en exécutant les commandes suivantes :

logman start LOGNAME_Long / LOGNAME_Short
logman stop LOGNAME_Long / LOGNAME_Short

Le journal Analyseur de performances se trouve dans le chemin d’accès : C :\PERFLOGS.

Autres méthodes pour collecter des données

Utiliser le vidage de mémoire pour collecter des données pour l’ordinateur physique en cours d’exécution dans un état figé

Avertissement

Suivez attentivement les étapes décrites dans cette section. De graves problèmes peuvent se produire si vous modifiez le Registre de façon incorrecte. Avant de le modifier, sauvegardez le Registre afin de pouvoir le restaurer en cas de problème.

Si l’ordinateur physique est toujours en cours d’exécution dans un état figé, procédez comme suit pour activer et collecter le vidage de la mémoire :

  1. Assurez-vous que l’ordinateur est configuré pour obtenir un fichier de vidage de mémoire complet et que vous pouvez y accéder via le réseau.

    Note

    S’il n’est pas possible d’accéder à l’ordinateur concerné via le réseau, essayez de générer un fichier de vidage de mémoire via NMI. Le résultat de l’action peut ne pas collecter un fichier de vidage de mémoire si certains des paramètres suivants ne sont pas qualifiés.

    1. Essayez d’accéder au bureau de l’ordinateur par n’importe quel moyen.

      Note

      Si l’accès au système d’exploitation n’est pas possible, essayez d’accéder à distance à l’Éditeur du Registre sur l’ordinateur. Vous pouvez ensuite vérifier le type de fichier de vidage de mémoire et de fichier de page avec lequel l’ordinateur est actuellement configuré.

    2. À partir d’un ordinateur distant qui se trouve de préférence dans le même réseau et le même sous-réseau, accédez au Registre réseau de l’éditeur>de Registre Connect. Ensuite, connectez-vous à l’ordinateur concerné et vérifiez les paramètres suivants :

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\CrashDumpEnabled

        Vérifiez que l’entrée de Registre CrashDumpEnabled est 1.

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\NMICrashDump

        Sur certains serveurs physiques, si l’entrée de NMICrashDump Registre existe et que sa valeur est 1, vous pouvez tirer parti de l’interface NMI du fournisseur de gestion à distance tel que DRAC, iLo et RSA.

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PagingFiles and ExistingPageFiles

        Si la valeur de l’entrée de Pagefile Registre est gérée par le système, la taille ne sera pas reflétée dans le Registre. Par exemple, ?:\pagefile.sys)

        Si le fichier de page est personnalisé, la taille est reflétée dans le Registre, par ?:\pagefile.sys 1024 1124exemple . Dans cet exemple, 1024 est la taille initiale et 1124 est la taille maximale.

        Note

        Si la taille n’est pas reflétée dans le Registre, essayez d’accéder à un partage d’administration où se trouve le fichier de page. Par exemple, \\ServerName\C$.

    3. Assurez-vous qu’il existe un fichier de pagination (pagefile.sys) sur le lecteur système de l’ordinateur, et qu’il s’agit d’au moins 100 Mo sur la RAM installée.

    4. Assurez-vous qu’il y a plus d’espace libre sur les lecteurs de disque dur de l’ordinateur qu’il y a de la RAM physique.

  2. Activez la valeur de Registre CrashOnCtrlScroll sur l’ordinateur pour permettre au système de générer un fichier de vidage à l’aide du clavier.

    1. À partir d’un ordinateur distant de préférence dans le même réseau et le même sous-réseau, accédez à l’Éditeur>de Registre Connect Network Registry. Connectez-vous à l’ordinateur concerné et recherchez les clés de Registre suivantes :

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
    2. Créez l’entrée de Registre suivante CrashOnCtrlScroll dans les deux clés de Registre :

      Nom de la valeur : CrashOnCtrlScroll Type de données : valeur REG_DWORD : 1

    3. Fermez l’Éditeur du Registre et redémarrez l’ordinateur.

  3. Lorsque l’ordinateur présente le problème, maintenez la touche Ctrl enfoncée vers la droite, puis appuyez deux fois sur la touche De verrouillage de défilement pour générer un vidage de mémoire.

    Note

    Par défaut, le fichier de vidage se trouve dans le chemin d’accès : %SystemRoot%\MEMORY. DMP.

Utiliser pool Monitor pour collecter des données pour l’ordinateur physique qui n’est plus figé

Le moniteur de pool vous indique le nombre d’allocations et d’octets en attente d’allocation par type de pool et la balise passée dans les appels d’ExAllocatePoolWithTag.

Pour plus d’informations, consultez Utilisation de PoolMon pour rechercher des exemples de fuite de mémoire en mode noyau et poolMon.

Utiliser le vidage de mémoire pour collecter des données pour la machine virtuelle en cours d’exécution dans un état figé

Utilisez l’une des méthodes suivantes pour l’application sur laquelle la machine virtuelle est en cours d’exécution.

Microsoft Hyper-V.

Vous pouvez également utiliser la fonctionnalité NMI intégrée via une applet de commande Debug-VM pour déboguer et obtenir un vidage de mémoire.

Pour déboguer les machines virtuelles sur Hyper-V, exécutez l’applet de commande suivante dans Windows PowerShell :

Debug-VM -Name "VM Name" -InjectNonMaskableInterrupt -ComputerName Hostname  

VMware

Vous pouvez utiliser des instantanés VMware ou suspendre l’état et extraire un fichier de vidage de mémoire équivalent à un fichier de vidage de mémoire complet. Utilisez le point de contrôle de VMware To Core Tool (vmss2core) pour convertir les fichiers d’état de suspension (.vmss) et d’instantané (.vmsn) en fichier de vidage. Analysez ensuite le fichier à l’aide des outils de débogage Windows standard.

Note

Lorsque vous utilisez Support Microsoft, vous devez utiliser l’outil De point de contrôle to core de VMware (vmss2core) pour convertir des instantanés VMware en fichier de vidage avant de les charger dans Microsoft. Si vous rencontrez des problèmes avec la conversion d’instantanés, contactez VMware pour obtenir du support.

Citrix XenServer

Le processus de vidage de la mémoire se produit en appuyant sur la combinaison de clavier Ctrl+Défilement droite+Verrouillage de défilement. Pour plus d’informations, consultez la méthode 1 de déclenchement d’un vidage de mémoire à partir d’une machine virtuelle Windows s’exécutant sur XenServer à partir de Citrix.

Limitations de l’espace sur le lecteur système dans Windows Server

Sur un serveur Windows Server, vous n’avez peut-être pas suffisamment d’espace disque libre pour générer un fichier de vidage de mémoire complet sur le volume système.

Il existe une deuxième option si le lecteur système n’a pas suffisamment d’espace. Vous pouvez utiliser l’entrée de DedicatedDumpFile Registre. Pour plus d’informations, consultez Configurer le chemin de destination d’un vidage de mémoire.

Pour plus d’informations, consultez Comment utiliser la valeur de Registre DedicatedDumpFile pour surmonter les limitations de l’espace sur le lecteur système.

Exclusion de responsabilité sur les coordonnées externes

Microsoft fournit des informations de contacts externes afin de vous aider à obtenir un support technique sur ce sujet. Ces informations de contact peuvent changer sans préavis. Microsoft ne garantit pas l’exactitude des informations concernant les sociétés externes.

Exclusion de responsabilité de tiers

Les produits tiers mentionnés dans le présent article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute garantie, implicite ou autre, concernant les performances ou la fiabilité de ces produits.