Lessico IT › Hardware › NMI (interrupt non mascherabile)

NMI (interrupt non mascherabile)

Hardware Svenska → Aggiornato: 2026-11-03

Un interrupt che il processore non può disattivare: passa anche quando tutti gli altri interrupt sono disabilitati.

Gli interrupt ordinari si possono mascherare: il codice li disattiva attorno a una sezione critica e li accoglie dopo. Un NMI non ha un interruttore del genere. Per questo è il canale per eventi più importanti di qualunque cosa il programma stia facendo: un errore di parità nella memoria, l'intervento di un watchdog, un alimentatore sul punto di cedere.

L'idea è vecchia. Il 6502 aveva un pin NMI dedicato, che il NES usava per svegliare il gioco a ogni vertical blank. Su x86 i primi PC segnalavano così gli errori di memoria, e Linux lo usa ancora per il «NMI watchdog», che individua un core bloccato. Su Cortex-M l'NMI è l'eccezione numero 2 con priorità fissa −2; solo il reset ha la precedenza.

Il problema è che un gestore di NMI può piombare nel mezzo di qualsiasi cosa, compreso codice convinto di essere protetto. Deve quindi essere breve e non deve mai acquisire un lock.

← Torna al lessico