ISR

Sta per “Interrupt Service Routine.”Un ISR (chiamato anche gestore di interrupt) è un processo software invocato da una richiesta di interrupt da un dispositivo hardware. Gestisce la richiesta e la invia alla CPU, interrompendo il processo attivo. Quando l’ISR è completo, il processo viene ripreso.

Un esempio di base di un ISR è una routine che gestisce gli eventi della tastiera, come la pressione o il rilascio di un tasto. Ogni volta che viene premuto un tasto, l’ISR elabora l’input. Ad esempio, se si tiene premuto il tasto freccia destra in un file di testo, l’ISR segnalerà alla CPU che il tasto freccia destra è premuto. La CPU invia queste informazioni al word processor attivo o al programma di modifica del testo, che sposterà il cursore a destra. Quando si lascia andare la chiave, l’ISR gestisce l’evento” key up”. Questo interrompe il precedente stato “key down”, che segnala al programma di interrompere lo spostamento del cursore.

Simile alla legge di inerzia di Newton (un oggetto in movimento tende a rimanere in movimento), i processi informatici continuano a funzionare a meno che non siano interrotti. Senza una richiesta di interrupt, un computer rimarrà nel suo stato corrente. Ogni segnale di ingresso causa un interrupt, costringendo la CPU a elaborare l’evento corrispondente.

Molti tipi di dispositivi hardware, inclusi componenti interni e periferiche esterne, possono inviare interrupt alla CPU. Gli esempi includono tastiere, mouse, schede audio e dischi rigidi. Un driver di periferica consente la comunicazione tra ciascuno di questi dispositivi e la CPU. Gli ISRS danno priorità alle richieste di interrupt in base all’impostazione IRQ del dispositivo (o della porta). In genere la tastiera è in cima alla lista IRQ, mentre i dispositivi come i dischi rigidi sono più in basso.

Aggiornato: 7 dicembre 2016