Interrupt request: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
→IRQ nel PC AT: sintassi: correggo lista indentata |
||
| (48 versioni intermedie di 33 utenti non mostrate) | |||
Riga 1:
== Descrizione ==
Il meccanismo degli interrupt è utilizzato da quasi tutti i modelli di CPU esistenti sul mercato, perché è il modo più facile per interrompere il normale flusso del programma quando accade un evento inatteso. L'espressione IRQ è spesso usata come sinonimo di [[interrupt]], ma descrive un meccanismo diverso: un IRQ è una ''richiesta'' da parte dell'[[hardware]] collegato alla CPU, eseguita mandando opportuni segnali ai [[pin]] fisici di collegamento della CPU stessa. Tale richiesta, a seconda dello stato in cui si trova la CPU, può anche essere accantonata per essere eseguita in un secondo tempo. A tale proposito esistono dei particolari tipi di IRQ (a volte chiamati NMI, ''Non Maskable Interrupt'') che non possono essere accantonati ma eseguiti immediatamente.▼
Il meccanismo degli interrupt è utilizzato da quasi tutti i modelli di CPU esistenti sul mercato, perché è il modo più facile per interrompere il normale flusso del programma quando accade un evento inatteso.
▲
Gli IRQ sono spesso organizzati in gerarchie di priorità, dove un IRQ di basso livello può essere a sua volta interrotto da un IRQ di livello più alto. I diversi tipi di computer in genere standardizzano i loro IRQ in modo che ad un certo IRQ corrisponda sempre un certo tipo di evento esterno: un tasto premuto sulla tastiera, una comunicazione in arrivo dalla porta seriale, eccetera.▼
▲Gli IRQ sono spesso organizzati in gerarchie di priorità, dove un IRQ di basso livello può essere a sua volta interrotto da un IRQ di livello più alto. I diversi tipi di computer in genere standardizzano i loro IRQ in modo che ad un certo IRQ corrisponda sempre un certo tipo di evento esterno: un tasto premuto sulla tastiera, una comunicazione in arrivo dalla porta seriale
Sui sistemi [[x86]], su cui sono basati la maggior parte dei [[personal computer|PC]] odierni, sono attualmente presenti 16 IRQ (0-15), ciascuno dei quali rappresenta un componente hardware fisico o virtuale. Per esempio, IRQ0 è assegnato al ''[[timer]]'' di sistema mentre IRQ1 è assegnato alla tastiera. I numeri più bassi denotano funzionalità più critiche e possono interrompere quelli più alti.▼
▲Sui sistemi [[x86]], su cui sono basati la maggior parte dei [[personal computer|PC]] odierni, sono attualmente presenti 16 IRQ (0-15), ciascuno dei quali rappresenta un componente hardware fisico o virtuale. Per esempio, IRQ0 è assegnato al ''[[Timer (informatica)|timer]]'' di sistema mentre IRQ1 è assegnato alla tastiera. I numeri più bassi denotano funzionalità più critiche e possono interrompere quelli più alti.
In passato, sempre per quanto riguarda i sistemi [[x86]], esistevano solo 8 IRQ (0-7). Con la crescente necessità di nuovo hardware anche la necessità di nuovi IRQ crebbe. La soluzione fu aggiungere altri 8 IRQ, collegando IRQ2 al nuovo IRQ9.▼
▲In passato, sempre per quanto riguarda i sistemi
Nei computer di tipo [[Pentium]] (e in alcuni [[80486|486]]) gli IRQ possono essere gestite dall'[[APIC]].▼
▲Nei computer di tipo [[Pentium]] (e in alcuni [[80486|486]]) gli IRQ possono essere gestite dall'[[Architettura APIC della Intel|APIC]].
== IRQ nel PC AT ==
* PIC A:
** IRQ0 = Timer [[8253]]/[[8254]] (System Timer)
** IRQ1 = [[Tastiera (informatica)|Tastiera]]
** IRQ2 = Riservato per il PIC[[Intel_8259|8259]]B (
**
**
**
**
**
* PIC B:
** IRQ8 = Real-time clock (RTC)
* IRQ10 = Non assegnato▼
**
**
* IRQ13 = [[coprocessore matematico]]▼
** IRQ12 = Mouse [[Connettore Mini-DIN#Connettori a 6 Piedini|PS/2]]
* IRQ14 = Canale [[Advanced Technology Attachment|IDE]] primario▼
▲** IRQ13 = [[coprocessore matematico]]
* IRQ15 = Canale [[Advanced Technology Attachment|IDE]] secondario▼
▲** IRQ14 = Canale [[Advanced Technology Attachment|IDE]] primario
▲** IRQ15 = Canale [[Advanced Technology Attachment|IDE]] secondario
== Voci correlate ==
* [[
* [[Indirizzi I/O]]
== Collegamenti esterni ==
*
<!-- Interruption matérielle??? LOL! -->
[[Categoria:Microprocessore]]
▲[[categoria:informatica]]
▲[[de:Interrupt Request]]
| |||