Interrupt vector: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
 
sf, rivisitata intera voce
 
(30 versioni intermedie di 24 utenti non mostrate)
Riga 1:
{{F|informatica|maggio 2022}}{{S|informatica}}
Nei [[sistemi operativi]] guidati dalle [[interrupt]], l''''interrupt vector''' è il vettore che contiene gli indirizzi di tutte le routine di servizio.
 
In [[informatica]], un '''interrupt vector''' (''vettore delle interruzioni'') è un [[indirizzo di memoria]] del [[gestore di interrupt]], oppure un indice ad un array, chiamato ''interrupt vector table'', il quale può essere implementato tramite una ''dispatch table''. La tabella degli interrupt vector contiene gli indirizzi di memoria dei gestori di interrupt. Quando si genera una interruzione, il processore salva il suo stato di esecuzione con il [[Commutazione di contesto|context switch]], ed inizia l'esecuzione del gestore di interruzione all'interrupt vector (questo procedimento avviene quando l'interruzione ha carattere sincrono). Infatti vi è una ''wait instruction'' (istruzione d'attesa) che obbliga la [[CPU]] ad effettuare [[Polling (informatica)|cicli vuoti]] fino a che non arriva il prossimo interrupt.
==Voci correlate==
Nel caso in cui si dovesse verificare una interruzione asincrona il programma provvede a lanciare un interrupt con la richiesta di [[I/O]] e nell'attesa del dato continua ad effettuare operazioni logico-aritmetiche.
Quando arriverà nel momento in cui gli servirà il risultato si fermerà e inizierà ad aspettare.
L'I/O asincrono serve a far sì che alcuni programmi possano anticipare la richiesta di un dato così nel caso in cui esso dovesse servire lo possono già utilizzare.
 
Nei [[sistemi operativi]] guidati dalledagli [[interrupt]], l''''interrupt vector''' è il vettore che contiene gli indirizzi di tutte le routine di servizio.
 
Ogni interrupt ha una sua priorità. Il registro di [[Maschera di bit|mascheramento]] delle interruzioni è un [[registro di stato]]; questo significa che gli viene abbinato un valore binario:
* 1 - quando deve bloccare i successivi interrupt in quanto hanno una priorità inferiore rispetto all'interrupt che al momento è in esecuzione (exe),
* 0 - quando riceve richiesta di interrupt con priorità più alta dell'interrupt che è in esecuzione, così salva il contesto computazionale effettuando un context switching.
 
Si ricorda che il bit di mascheramento del registro di stato viene attivato dalla CPU per informare che non è disposta a servire altri interrupt.
== Voci correlate ==
 
[[Multitasking]]
{{Portale|informatica}}
 
[[Categoria:Microprocessore]]