Non-Maskable Interrupt (NMI) is een speciaal type interrupt dat niet door de processor kan worden uitgeschakeld. Het wordt doorgaans gebruikt voor het melden van kritieke hardwarestoringen of andere gebeurtenissen die onmiddellijke aandacht van het besturingssysteem vereisen.
Enkele soorten problemen die ervoor kunnen zorgen dat een NMI optreedt, zijn onder meer:
* Hardwarefouten: NMI kan worden geactiveerd door verschillende hardwarefouten, zoals geheugenpariteitsfouten, busfouten of problemen met de stroomvoorziening. Deze fouten kunnen ertoe leiden dat de processor in een ongedefinieerde toestand terechtkomt, die alleen kan worden hersteld door het systeem opnieuw in te stellen.
* Softwarefouten: NMI kan ook worden geactiveerd door bepaalde softwarefouten, zoals stackoverflows of bufferoverflows. Deze bugs kunnen ervoor zorgen dat de processor ongeldige instructies uitvoert of toegang krijgt tot ongeldige geheugenlocaties, wat kan leiden tot een onstabiel systeem of een systeemcrash.
* Externe evenementen: NMI kan ook worden geactiveerd door externe gebeurtenissen, zoals een hardware watchdog-timer of een stroomstoring. Deze gebeurtenissen kunnen ervoor zorgen dat de processor in een NMI-status terechtkomt om passende actie te ondernemen, zoals het opslaan van de systeemstatus of het netjes afsluiten van het systeem.
NMI is een waardevol hulpmiddel voor het debuggen van hardware- en softwareproblemen, omdat het informatie kan verschaffen over de oorzaak van het probleem en de ontwikkelaar kan helpen corrigerende maatregelen te nemen. |