Interruptions Priorité Maximale Architecture x86 : NMI, MCE et Exceptions Critiques
Hiérarchie Priorité Interruptions (x86/x64)
Interruptions processeur sont priorisées pour assurer gestion immédiate événements système critiques. Priorité décroissante :
1. Interruption Non-Masquable (NMI) – Priorité Maximale
- Ne peut être désactivée par CLI/STI ou drapeau IF.
- Signale erreurs matérielles irrécupérables : erreurs parité/ECC mémoire, erreurs fatales PCIe, timeout watchdog, panne hardware.
- Handler s'exécute sur pile NMI dédiée (IST).
- Déclenche généralement kernel panic / bugcheck / redémarrage.
2. Exception Contrôle Machine (MCE) – Vecteur 18
- Erreurs CPU internes : parité cache, corruption TLB, erreurs bus, événements throttling thermique.
- Registres modèle-spécifiques (MSRs) loguent détails (MCi_STATUS, MCi_ADDR).
- Peut être corrigée (CMC), récupérable, ou fatale.
3. Double Faute (#DF) – Vecteur 8
- Seconde exception pendant gestion première (ex: page fault dans IDT).
- Indique débordement pile noyau, corruption IDT, bug driver sévère.
- Utilise Task Gate ou IST pour pile séparée.
- Presque toujours fatale → redémarrage.
4. Défaut Page (#PF) – Vecteur 14
- Pas priorité max, mais exception critique la plus fréquente.
- Pagination demande, COW, swap, violation accès, pages garde.
- Gérée par gestionnaire mémoire OS ; peut être résolue (page in) ou fatale (segfault).
5. Interruption Gestion Système (SMI)
- Entre Mode Gestion Système (SMM) — mode CPU séparé, invisible OS.
- Gère : gestion énergie, thermique, contrôle hardware, services runtime BIOS/UEFI.
- Préempte tout y compris NMI (sur certaines plateformes).
- Préoccupation sécurité : rootkits SMM.
6. Interruption Moniteur Thermique
- Capteur thermique on-die déclenche à Tj,max (ex: 100°C).
- Throttle horloge, assert PROCHOT#, peut déclencher arrêt.
7. Interruption Minuteur Watchdog (WDT)
- Minuteur hardware reset par heartbeat logiciel.
- Expiration → NMI ou reset. Détecte blocage noyau.
- IPMI, iDRAC, IPMI, timer TCO (Intel), SP805 (ARM).
Note Priorité
Ordre exact varie microarchitecture. NMI et SMI sont architecturalement priorité max. Interruptions externes masquables (IRQs) plus bas, priorisées par APIC/PIC (timer, IPI, périphérique).
