Erreurs matérielles et sources d’erreurs
Une erreur matérielle est un dysfonctionnement d’un composant matériel dans un système informatique. Les composants matériels contiennent des mécanismes de détection d’erreur qui peuvent détecter lorsqu’une condition d’erreur matérielle existe. Les erreurs matérielles peuvent être classées comme des erreurs corrigées, ou erreurs non corrigées.
Une erreur corrigée est une condition d’erreur matérielle qui a été corrigée par le matériel ou le microprogramme au moment où le système d’exploitation est averti de la présence de la condition d’erreur.
Une erreur non corrigée est une condition d’erreur matérielle qui ne peut pas être corrigée par le matériel ou le microprogramme. Les erreurs non correctives sont classées comme irrécupérables ou non fatales.
- Une erreur matérielle fatale est une condition d'erreur non corrigée ou non contenue qui est déterminée comme irrécupérable par le matériel. Lorsqu’une erreur fatale non corrigée se produit, le système d’exploitation génère un bug check pour contenir l’erreur.
- Une erreur matérielle non fatale est une condition d’erreur non corrigée à partir de laquelle le système d’exploitation peut tenter de récupérer en essayant de corriger l’erreur. Si le système d’exploitation ne peut pas corriger l’erreur, il génère une vérification de bogue pour contenir l’erreur.
La notion d’un matériel source d’erreur est un concept fondamental de l’architecture d’erreur matérielle Windows (WHEA). Une source d’erreur matérielle est toute unité matérielle qui avertit le système d’exploitation de la présence d’une condition d’erreur. Voici quelques exemples de sources d’erreurs matérielles :
Exception de vérification machine du processeur (par exemple, MC#)
Signaux d’erreur du jeu de puces (par exemple, SCI, SMI, SERR#, MCERR#)
Rapport d’erreur de bus E/S (par exemple, interruption d’erreur du port racine PCI Express)
Erreurs d’appareil d’E/S
Une source d’erreur matérielle unique peut gérer le rapport d’erreurs pour plusieurs types de condition d’erreur matérielle. Par exemple, l’exception de vérification de la machine d’un processeur signale généralement des erreurs de processeur, des erreurs de cache et de mémoire et des erreurs de bus système.
Remarque
L’interruption de gestion du système (SMI) est gérée par le microprogramme, et non par le système d’exploitation.
Une source d’erreur matérielle est généralement représentée par :
Un ou plusieurs registres d’état d’erreur matérielle
Un ou plusieurs registres de configuration ou de contrôle des erreurs matérielles
Mécanisme de signalisation permettant d’alerter le système d’exploitation qu’une condition d’erreur matérielle existe
Dans certains cas, il n’existe pas de mécanisme de signalisation explicite et le système d’exploitation doit interroger les registres d’état d’erreur pour tester une condition d’erreur. Cependant, le sondage ne peut être utilisé que pour les conditions d’erreurs corrigées car les erreurs non corrigées nécessitent une attention immédiate du système d’exploitation.
À compter de Windows Vista, le système d’exploitation conserve une liste de toutes les sources d’erreur matérielles qui peuvent être découvertes sur une plateforme matérielle particulière. WHEA utilise un mécanisme de découverte lorsque le système d’exploitation commence à déterminer quelles sources d’erreur matérielles existent sur un système particulier. Les moyens par lesquels ces informations sont exposées au système d’exploitation sont propres à la plateforme. Le système d’exploitation collecte ces informations à partir d’une combinaison de tables ACPI, d’interactions de microprogramme et d’autres mécanismes spécifiques à la plateforme.
Remarque
Windows Vista ne collecte pas les informations de source d’erreur matérielle des tables ACPI. Toutefois, à partir de Windows Server 2008 et Windows Vista SP1, le système d’exploitation utilise des tables ACPI pour collecter les informations de source d’erreur matérielle.