Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 523

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>KernelAnalysis-HOWTO: IRQ </TITLE>
 <LINK HREF="KernelAnalysis-HOWTO-13.html" REL=next>
 <LINK HREF="KernelAnalysis-HOWTO-11.html" REL=previous>
 <LINK HREF="KernelAnalysis-HOWTO.html#toc12" REL=contents>
</HEAD>
<BODY>
<A HREF="KernelAnalysis-HOWTO-13.html">Avanti</A>
<A HREF="KernelAnalysis-HOWTO-11.html">Indietro</A>
<A HREF="KernelAnalysis-HOWTO.html#toc12">Indice</A>
<HR>
<H2><A NAME="s12">12. IRQ </A></H2>

<H2><A NAME="ss12.1">12.1 Introduzione</A>
</H2>

<P>L'IRQ e' un segnale asincrono mandato al microprocessore per avvertirlo
che un lavoro e' stato completato o che si e' verificato un errore.
<H2><A NAME="ss12.2">12.2 Schema di Interazione</A>
</H2>

<P>
<PRE>
                                 |&lt;--&gt;  IRQ(0) [Timer]
                                 |&lt;--&gt;  IRQ(1) [Device 1]
                                 | ..
                                 |&lt;--&gt;  IRQ(n) [Device n]
    _____________________________| 
     /|\      /|\          /|\
      |        |            |
     \|/      \|/          \|/
 
    Task(1)  Task(2) ..   Task(N)
              
             
             Schema di interazione Tasks-IRQ 
  
</PRE>
<H3>Cosa accade?</H3>

<P>Un O.S. tipico utilizza molti segnali IRQ per interrompere la normale esecuzione
di un processo e gestire del lavoro relativo ad un device. Lo schema e' il
seguente:
<P>
<OL>
<LI>Arriva un IRQ (i) e il Task(j) viene interrotto</LI>
<LI>Viene eseguito il relativo IRQ(i)_handler</LI>
<LI>Il controllo torna al Task(j) precedentemente interrotto</LI>
</OL>
<P>In particolare Linux, quando arriva un IRQ esegue prima di tutto la funzione
di incapsulazione IRQ (chiamata "interrupt0x??"), e soltanto dopo l'IRQ(i)_handler
ufficile. Questo permette di eseguire alcune operazioni comuni a tutti gli
IRQ come la gestione del TimeSlice.
<HR>
<A HREF="KernelAnalysis-HOWTO-13.html">Avanti</A>
<A HREF="KernelAnalysis-HOWTO-11.html">Indietro</A>
<A HREF="KernelAnalysis-HOWTO.html#toc12">Indice</A>
</BODY>
</HTML>