Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D La Corte in Rete
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Nicola Mazzocca » 23.Gestione delle interruzioni


Interruzioni

Modello di riferimento

  • Architettura interna ed algoritmo del processore
  • Il sistema delle interruzioni: modello fondamentale
  • L’algoritmo del processore e le interruzioni
  • Le cause di interruzione
  • I registri del modello fondamentale

Gestione delle Interruzioni

Fasi nella gestione delle interruzioni

  1. evento interrompente
  2. accettazione dell’interruzione
  3. salvataggio del contesto (hardware)
  4. identificazione del dispositivo
  5. salto all’entry point della Iinterrupt Service Routine (ISR)
  6. salvataggio del contesto (software)
  7. servizio dell’interruzione
  8. ripristino del contesto (software)
  9. ripristino del contesto (hardware)
  10. ritorno all’esecuzione normale

Gestione delle Interruzioni

Sospensione del programma interrotto

  • Le interruzioni possono essere totalmente asincrone rispetto alla normale esecuzione dei programmi
  • Il servizio di una interruzione sospende il programma in un momento qualsiasi
  • Sorge il problema di rendere il servizio dell’interruzione “trasparente” al programma interrotto.
  • Ciò viene fatto salvando lo stato di esecuzione (che comprende il PC, i flag dei codici di condizione e il contenuto di qualsiasi registro usato dalla routine di gestione dell’interruzione) per poi ripristinarlo al termine dell’interruzione

Gestione delle Interruzioni

Latenza di un’interruzione

  • Un’esigenza comune resta comunque quella di salvare lo stretto indispensabile poiché il salvataggio richiede trasferimenti di dati, eventualmente da e verso la memoria
  • Data la frequenza con cui le interruzioni vengono prodotte, questo rappresenta quindi un carico aggiuntivo che deve essere ridotto al minimo
  • Il salvataggio dello stato incrementa il ritardo tra l’istante di ricezione della richiesta di interruzione e l’istante in cui inizia l’esecuzione della routine di interrupt
  • Questo tempo viene detto latenza di interrupt

Gestione delle Interruzioni

Identificazione dei dispositivi

  • Serve in caso siano presenti più dispositivi che possono aver generato una interruzione
  • Spesso esistono poche linee (o solo una) comuni per tutti i dispositivi
  • Esistono diverse soluzioni
  • Tutte le soluzioni impiegano un misto di hardware e di software
  • Tutte le soluzioni dipendono fortemente sia dall’architettura del sistema che da quella del processore
  • Gestione delle Interruzioni

Prossima lezione

Interruzioni e protezione nel 68000

  • Organizzazione delle interruzioni nel 68000
  • Interruzioni vettorizzate ed autovettorizzate
  • Gestione della priorità
  • Tabella delle interruzioni
  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion

Fatal error: Call to undefined function federicaDebug() in /usr/local/apache/htdocs/html/footer.php on line 93