Non-Maskable Interrupt (NMI) er en speciel type afbrydelse, som ikke kan deaktiveres af processoren. Det bruges typisk til at rapportere kritiske hardwarefejl eller andre hændelser, der kræver øjeblikkelig opmærksomhed fra operativsystemet.
Nogle af de typer problemer, der kan forårsage et NMI, omfatter:
* Hardwarefejl: NMI kan udløses af forskellige hardwarefejl, såsom hukommelsesparitetsfejl, busfejl eller strømforsyningsproblemer. Disse fejl kan få processoren til at gå ind i en udefineret tilstand, som kun kan genoprettes ved at nulstille systemet.
* Softwarefejl: NMI kan også udløses af visse softwarefejl, såsom stackoverløb eller bufferoverløb. Disse fejl kan få processoren til at udføre ugyldige instruktioner eller få adgang til ugyldige hukommelsesplaceringer, hvilket kan føre til et ustabilt system eller et systemnedbrud.
* Eksterne begivenheder: NMI kan også udløses af eksterne hændelser, såsom en hardware watchdog timer eller et strømsvigt. Disse hændelser kan få processoren til at gå ind i en NMI-tilstand for at træffe passende handlinger, såsom at gemme systemtilstanden eller elegant lukke systemet ned.
NMI er et værdifuldt værktøj til debugging af hardware- og softwareproblemer, da det kan give information om kilden til problemet og hjælpe udvikleren med at træffe korrigerende handlinger.