Résolution avancée des problèmes pour l’ID d’événement 41 : « Le système a redémarré sans s’arrêter proprement en premier »

Remarque

Utilisateurs particuliers : cet article s’adresse aux agents de support et aux informaticiens. Si vous recherchez plus d’informations sur les messages d’erreur d’écran bleu, consultez Résoudre les erreurs d’écran bleu.

La meilleure façon d’arrêter Windows consiste à sélectionner Démarrer, puis à sélectionner une option pour éteindre ou arrêter l’ordinateur. Lorsque vous utilisez cette méthode standard, le système d’exploitation ferme tous les fichiers et avertit les services et applications en cours d’exécution afin qu’ils puissent écrire toutes les données non enregistrées sur le disque et vider les caches actifs.

Si votre ordinateur s’arrête de façon inattendue, Windows journalise l’ID d’événement 41 lors du prochain démarrage de l’ordinateur. Le texte de l’événement ressemble aux informations suivantes :

Event ID: 41  
Description: The system has rebooted without cleanly shutting down first.

Cet événement indique qu’une activité inattendue a empêché Windows de s’arrêter correctement. Un tel arrêt peut être dû à une interruption du bloc d’alimentation ou à une erreur d’arrêt. Si possible, Windows enregistre les codes d’erreur lors de son arrêt. Pendant la phase de noyau du prochain démarrage de Windows, Windows recherche ces codes et inclut tous les codes existants dans les données d’événement de l’ID d’événement 41.

EventData  
BugcheckCode 159  
BugcheckParameter1 0x3  
BugcheckParameter2 0xfffffa80029c5060  
BugcheckParameter3 0xfffff8000403d518  
BugcheckParameter4 0xfffffa800208c010  
SleepInProgress false  
PowerButtonTimestamp 0Converts to 0x9f (0x3, 0xfffffa80029c5060, 0xfffff8000403d518, 0xfffffa800208c010)  

Comment utiliser l’ID d’événement 41 lorsque vous résolvez les problèmes d’un arrêt ou d’un redémarrage inattendu

En soi, l’ID d’événement 41 peut ne pas contenir suffisamment d’informations pour définir explicitement ce qui s’est produit. En règle générale, vous devez également tenir compte de ce qui se produisait au moment de l’arrêt inattendu (par exemple, l’alimentation a échoué). Utilisez les informations de cet article pour identifier une approche de résolution des problèmes adaptée à votre situation :

  • Scénario 1 : L’ordinateur redémarre en raison d’une erreur d’arrêt, et l’ID d’événement 41 contient un code d’erreur d’arrêt (case activée de bogue)
  • Scénario 2 : L’ordinateur redémarre parce que vous avez appuyé et maintenu le bouton Marche/Arrêt
  • Scénario 3 : L’ordinateur ne répond pas ou redémarre de manière aléatoire, et l’ID d’événement 41 n’est pas journalisé ou l’entrée ID d’événement 41 répertorie des valeurs de code d’erreur de zéro

Scénario 1 : L’ordinateur redémarre en raison d’une erreur d’arrêt, et l’ID d’événement 41 contient un code d’erreur d’arrêt (case activée de bogue)

Lorsqu’un ordinateur s’arrête ou redémarre en raison d’une erreur d’arrêt, Windows inclut les données d’erreur d’arrêt dans l’ID d’événement 41 dans le cadre de données d’événement supplémentaires. Ces informations incluent le code d’erreur d’arrêt (également appelé code de case activée de bogue), comme illustré dans l’exemple suivant :

EventData  
BugcheckCode 159  
BugcheckParameter1 0x3  
BugcheckParameter2 0xfffffa80029c5060  
BugcheckParameter3 0xfffff8000403d518  
BugcheckParameter4 0xfffffa800208c010  

Remarque

L’ID d’événement 41 inclut le code de case activée de bogue au format décimal. La plupart de la documentation qui décrit les codes de case activée de bogues fait référence aux codes en tant que valeurs hexadécimales au lieu de valeurs décimales. Pour convertir le nombre décimal en hexadécimal, procédez comme suit :

  1. Sélectionnez Démarrer, tapez calc dans la zone Rechercher , puis sélectionnez Calculatrice.
  2. Dans la fenêtre Calculatrice , sélectionnez Afficher le>programmeur.
  3. Sur le côté gauche de la calculatrice, vérifiez que Déc est mis en surbrillance.
  4. Utilisez le clavier pour entrer la valeur décimale du code de case activée bogue.
  5. Sur le côté gauche de la calculatrice, sélectionnez Hexadécimal.
    La valeur affichée par la calculatrice est désormais le code hexadécimal.

Lorsque vous convertissez un code de case activée bogue au format hexadécimal, vérifiez que la désignation « 0x » est suivie de huit chiffres (autrement dit, la partie du code après « x » inclut suffisamment de zéros pour remplir huit chiffres). Par exemple, 0x9F est généralement documenté comme 0x0000009f et 0xA est documenté comme 0x0000000A. Dans le cas de l’exemple de données d’événement de cet article, « 159 » est converti en 0x0000009f.

Après avoir identifié la valeur hexadécimale, utilisez les références suivantes pour poursuivre la résolution des problèmes :

Scénario 2 : L’ordinateur redémarre parce que vous avez appuyé et maintenu le bouton Marche/Arrêt

Étant donné que cette méthode de redémarrage de l’ordinateur interfère avec l’opération d’arrêt de Windows, nous vous recommandons d’utiliser cette méthode uniquement si vous n’avez pas d’alternative. Par exemple, vous devrez peut-être utiliser cette approche si votre ordinateur ne répond pas. Lorsque vous redémarrez l’ordinateur en appuyant de façon prolongée sur le bouton Marche/Arrêt, l’ordinateur enregistre un ID d’événement 41 qui inclut une valeur différente de zéro pour l’entrée PowerButtonTimestamp .

<EventData>
<Data Name="BugcheckCode">0</Data>
<Data Name="BugcheckParameter1">0x0</Data>
<Data Name="BugcheckParameter2">0x0</Data>
<Data Name="BugcheckParameter3">0x0</Data>
<Data Name="BugcheckParameter4">0x0</Data>
<Data Name="SleepInProgress">0</Data>
<Data Name="PowerButtonTimestamp">131728546170882432</Data>
<Data Name="BootAppStatus">0</Data>
</EventData>

Pour obtenir de l’aide sur la résolution des problèmes d’un ordinateur qui ne répond pas, consultez l’aide de Windows. Envisagez de rechercher de l’aide en utilisant des mots clés tels que « bloquer », « répondre » ou « écran vide ».

Scénario 3 : L’ordinateur ne répond pas ou redémarre de manière aléatoire, et l’ID d’événement 41 n’est pas enregistré ou l’entrée ID d’événement 41 ou répertorie les valeurs de code d’erreur de zéro

Ce scénario inclut les circonstances suivantes :

  • Vous arrêtez l’alimentation sur un ordinateur qui ne répond pas, puis vous redémarrez l’ordinateur.
    Pour vérifier qu’un ordinateur ne répond pas, appuyez sur la touche verr. maj du clavier. Si le voyant verr. maj du clavier ne change pas lorsque vous appuyez sur la touche verr. maj , l’ordinateur peut ne pas répondre (également appelé blocage).
  • L’ordinateur redémarre, mais il ne génère pas l’ID d’événement 41.
  • L’ordinateur redémarre et génère l’ID d’événement 41, mais les valeurs BugcheckCode et PowerButtonTimestamp sont égales à zéro.

Dans ce cas, quelque chose empêche Windows de générer des codes d’erreur ou d’écrire des codes d’erreur sur le disque. Quelque chose peut bloquer l’accès en écriture au disque (comme dans le cas d’un ordinateur qui ne répond pas) ou l’ordinateur peut s’arrêter trop rapidement pour écrire les codes d’erreur ou même détecter une erreur.

Les informations contenues dans l’ID d’événement 41 indiquent par où commencer à rechercher les problèmes :

  • L’ID d’événement 41 n’est pas enregistré ou le code case activée bogue est égal à zéro. Ce comportement peut indiquer un problème d’alimentation. Si l’alimentation d’un ordinateur est interrompue, l’ordinateur peut s’arrêter sans générer d’erreur d’arrêt. S’il génère une erreur d’arrêt, il peut ne pas terminer l’écriture des codes d’erreur sur le disque. La prochaine fois que l’ordinateur démarre, il se peut qu’il ne consigne pas l’ID d’événement 41. Ou, si c’est le cas, le bogue case activée code est égal à zéro. Les conditions suivantes peuvent en être la cause :

    • Dans le cas d’un ordinateur portable, la batterie a été retirée ou vidée.
    • Dans le cas d’un ordinateur de bureau, l’ordinateur a été débranché ou a subi une panne de courant.
    • Le bloc d’alimentation est sous-alimenté ou défectueux.
  • La valeur de PowerButtonTimestamp est zéro. Ce comportement peut se produire si vous avez déconnecté l’alimentation d’un ordinateur qui ne répondait pas à l’entrée. Les conditions suivantes peuvent en être la cause :

    • Un processus Windows a bloqué l’accès en écriture au disque et vous arrêtez l’ordinateur en appuyant sur le bouton Marche/Arrêt pendant au moins quatre secondes.
    • Vous avez déconnecté l’alimentation d’un ordinateur qui ne répond pas.
  • Échec de l’écriture du fichier de vidage et toutes les valeurs sont Zéro. Par exemple :

    <EventData>
    <Data Name="BugcheckCode">0</Data>
    <Data Name="BugcheckParameter1">0x0</Data>
    <Data Name="BugcheckParameter2">0x0</Data>
    <Data Name="BugcheckParameter3">0x0</Data>
    <Data Name="BugcheckParameter4">0x0</Data>
    <Data Name="SleepInProgress">0</Data>
    <Data Name="PowerButtonTimestamp">0</Data>
    <Data Name="BootAppStatus">0</Data>
    </EventData>
    

    Toutefois, il existe un ID d’événement 46 journalisé par volmgr : Échec de l’initialisation du vidage sur incident !. Cet événement peut se produire si l’ordinateur a démarré sans fichier de vidage configuré. Le fichier de vidage par défaut est le fichier de page.

    Capture d’écran du journal des événements.

    Par conséquent, lorsque vous avez un cas avec un redémarrage inattendu et l’ID d’événement 41 a la valeur 0, case activée si vous avez un ID d’événement 46 par volmgr. Si c’est le cas, case activée la configuration du fichier de page. Des redémarrages inattendus peuvent toujours se produire en raison d’une vérification d’erreur, mais le système ne peut pas écrire le type de vérification d’erreur dans l’ID d’événement 41 et n’a pas pu également générer de vidage de mémoire. Consultez l’ID d’événement 46 lorsque vous démarrez un ordinateur.

En règle générale, les symptômes décrits dans ce scénario indiquent un problème matériel. Pour isoler le problème, procédez comme suit :

  • Désactivez l’overclocking. Si l’overclocking est activé sur l’ordinateur, désactivez-le. Vérifiez que le problème se produit lorsque le système s’exécute à la vitesse correcte.
  • Vérifiez la mémoire. Utilisez un vérificateur de mémoire pour déterminer l’intégrité et la configuration de la mémoire. Vérifiez que toutes les puces mémoire s’exécutent à la même vitesse et que chaque puce est correctement configurée dans le système.
  • Vérifiez le bloc d’alimentation. Vérifiez que le bloc d’alimentation a suffisamment de puissance pour gérer correctement les appareils installés. Si vous avez ajouté de la mémoire, installé un processeur plus récent, installé plus de lecteurs ou ajouté des périphériques externes, ces appareils peuvent nécessiter plus d’énergie que le bloc d’alimentation actuel peut fournir de manière cohérente. Si l’ordinateur a enregistré l’ID d’événement 41 parce que l’alimentation de l’ordinateur a été interrompue, envisagez d’obtenir un bloc d’alimentation sans interruption (OND) tel qu’un bloc d’alimentation de secours sur batterie.
  • Vérifiez s’il y a surchauffe. Examinez la température interne du matériel et case activée pour les composants en surchauffe.
  • Si l’ordinateur est un ordinateur physique, il peut avoir été redémarré par un logiciel ASR (Automatic Server Recovery) qui a détecté que l’ordinateur n’est pas réactif.
  • Si le système s’exécute sur une machine virtuelle Hyper-V et ne fait pas partie d’un environnement en cluster, le système aurait pu être redémarré par la fonctionnalité de pulsation Hyper-V. Si cette fonctionnalité est activée et que l’hôte ne détecte pas de pulsation de la machine virtuelle (peut-être parce qu’elle n’est pas réactive), Hyper-V redémarre la machine virtuelle.
  • Si le problème se produit dans un environnement en cluster Hyper-V, le problème peut être lié à l’option Activer la surveillance des pulsations pour la machine virtuelle . Consultez Fichier de vidage de la mémoire endommagée lorsque vous essayez d’obtenir un fichier de vidage de mémoire complète à partir d’une machine virtuelle qui s’exécute dans un environnement de cluster.
  • Si le problème se produit avec une machine virtuelle VMWare, il peut être lié à la fonctionnalité de pulsation dans VMWare, ou la machine virtuelle fait partie d’un cluster tiers.
  • Recherchez tout événement suspect avant l’heure d’arrêt (obtenue à partir de l’ID d’événement 6008) dans le journal de l’application et du journal système.

Si vous effectuez ces vérifications et que vous ne pouvez toujours pas isoler le problème, définissez le système sur sa configuration par défaut et vérifiez si le problème persiste.

Remarque

Si vous voyez un message d’erreur d’arrêt qui inclut un bogue case activée code, mais que l’ID d’événement 41 n’inclut pas ce code, modifiez le comportement de redémarrage de l’ordinateur. Pour cela, procédez comme suit :

  1. Cliquez avec le bouton droit sur Poste de travail, puis sélectionnez Propriétés>Paramètres> systèmeavancés Avancés.
  2. Dans la section Démarrage et récupération , sélectionnez Paramètres.
  3. Décochez la case Redémarrer automatiquement case activée.

Informations supplémentaires

Détails sur l’ID d’événement 41

L’erreur 41 de l’événement d’alimentation du noyau se produit lorsque l’ordinateur s’arrête ou redémarre de manière inattendue. Lorsqu’un ordinateur Windows démarre, une case activée est effectuée pour déterminer si l’ordinateur a été correctement arrêté. Si ce n’est pas le cas, un message d’ID d’événement d’alimentation du noyau 41 est généré.

Un ID d’événement 41 est utilisé pour signaler qu’un événement inattendu s’est produit qui a empêché l’arrêt correct de Windows. Les informations peuvent être insuffisantes pour définir explicitement ce qui s’est passé. Pour plus d’informations, consultez Kernel Power Event ID 41 .

  • Nom du journal : Système
  • Produit : Système d’exploitation Windows
  • ID : 41
  • Source : Microsoft-Windows-Kernel-Power
  • Niveau : Critique
  • Version : 6.1
  • Message : Le système a redémarré sans s’arrêter proprement au préalable. Cette erreur peut se produire si le système cesse de répondre, se bloque ou perd de l’alimentation de façon inattendue.

Remarque

L’heure indiquée dans le fichier .evtx est ajustée à l’heure de votre système. Vérifiez le fuseau horaire du serveur.

  • ID d’événement 41 : cet événement indique que Windows a redémarré sans arrêt complet.
  • ID d’événement 1074 : cet événement est enregistré lorsqu’une application est responsable de l’arrêt ou du redémarrage du système. Il indique également quand un utilisateur a redémarré ou arrêté le système à l’aide du menu Démarrer ou en appuyant sur Ctrl+Alt+Suppr.
  • ID d’événement 6006 : cet événement indique que Windows a été correctement désactivé.
  • ID d’événement 6008 : cet événement indique un arrêt incorrect ou sale. Il est journalisé lorsque l’arrêt le plus récent était inattendu.

Juste avant l’arrêt de l’ordinateur, shutdown.exe enregistre l’événement d’arrêt dans le journal système Windows avec source=User32 et l’ID d’événement 1074, ainsi que tout message personnalisé & code de raison.

Le journal des événements est le seul moyen d’indiquer qu’un redémarrage déclenché à partir de shutdown.exe est en attente. L’événement enregistre également le nom d’utilisateur ainsi que la date et l’heure d’émission de la shutdown commande.

Lorsque vous utilisez shutdown.exe pour redémarrer un serveur, le processus d’arrêt autorise normalement 30 secondes pour s’assurer que chaque service en cours d’exécution a le temps de s’arrêter. Les services sont arrêtés par ordre alphabétique. L’arrêt manuel des services dans un ordre spécifique avec NET STOP ou SC peut être légèrement plus rapide.

Fichier d’état de démarrage (à partir des composants internes de Windows 6e)

Windows utilise un fichier de status de démarrage (%SystemRoot%\Bootstat.dat) pour enregistrer le fait qu’il a progressé à travers différentes étapes du cycle de vie du système, y compris le démarrage et l’arrêt.

Cela permet au Gestionnaire de démarrage, au chargeur Windows et à l’outil de réparation de démarrage de détecter un arrêt anormal ou un échec de l’arrêt proprement, afin d’offrir à l’utilisateur des options de récupération et de démarrage de diagnostic, telles que Dernier bon connu et mode sans échec. Ce fichier binaire contient des informations par le biais desquelles le système signale la réussite des phases suivantes du cycle de vie du système :

  • Démarrage (la définition d’un démarrage réussi est la même que celle utilisée pour déterminer la dernière bonne status connue, qui a été décrite précédemment)
  • Arrêt
  • Reprendre à partir de la mise en veille prolongée ou de la suspension

Le fichier de status de démarrage indique également si un problème a été détecté la dernière fois que l’utilisateur a essayé de démarrer le système d’exploitation et les options de récupération affichées, indiquant que l’utilisateur a été informé du problème et a pris des mesures. Les API de bibliothèque runtime (Rtl) dans ntdll.dll contiennent les interfaces privées que Windows utilise pour lire et écrire dans le fichier. Comme le BCD, il ne peut pas être modifié par les utilisateurs.

À propos de l’arrêt

Lorsqu’un arrêt est lancé, Windows envoie un message WM_QUERYENDSESSION à toutes les applications en cours d’exécution qui ont un thread d’interface utilisateur. Ce message demande à l’application d’enregistrer toutes les données non enregistrées et de se terminer correctement. Si l’application ne répond pas au message dans un délai donné, Windows envoie un message WM_ENDSESSION à l’application, ce qui met immédiatement fin à l’application.

Si toutes les applications répondent au message WM_QUERYENDSESSION et se terminent correctement, Windows enregistre un événement d’arrêt propre dans le journal des événements système. Si une application ne répond pas au message ou se termine de façon anormale, Windows enregistre un événement d’arrêt sale dans le journal des événements système.

Les arrêts inattendus sont principalement causés par des composants en dehors du système d’exploitation.

Un sale’arrêt est quand un système informatique est arrêté sans passer par le processus d’arrêt approprié. Cela peut se produire lorsque l’alimentation est soudainement coupée ou lorsque l’ordinateur est forcé de s’éteindre en maintenant le bouton d’alimentation enfoncé. Un arrêt sale peut entraîner une perte ou une altération des données et peut également entraîner des problèmes de démarrage.

Le registre du nombre d’arrêt sale est une clé de Registre dans le Registre Windows qui est utilisée pour suivre le nombre de fois où un système informatique a été arrêté sans passer par le processus d’arrêt approprié. Cette clé peut être utile lors de la résolution des problèmes de démarrage afin d’identifier si le système n’a pas été mis hors tension de manière incorrecte.

Vous pouvez également effacer toutes les valeurs (telles que DirtyShutdown, LastAliveStamp, TimeStampInterval) dans la clé de Registre suivante : Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Reliability. Cela peut empêcher l’outil de suivi des événements d’arrêt d’apparaître après un arrêt inattendu.