Gli interrupt Quando una periferica richiede attenzione alla cpu genera un segnale detto di interrupt.

Slides:



Advertisements
Presentazioni simili
La struttura fisica e logica di un elaboratore
Advertisements

Gestione Input Output A. Ferrari.
Perché le interruzioni?
IL MICROCONTROLLORE ST6
Il Sistema Operativo.
Orario definitivo Martedì Aula 2 Polo Mercoledì Aula 1 Fondi Palazzina delle Scienze Giovedì 9-11 Aula 1 Fondi Palazzina delle Scienze Nota:
Gestione del processore
12. Il Sistema Operativo Ing. Simona Colucci
Comandi ai dispositivi di I/O + Si usano due metodi per mandare informazioni a un dispositivo: –Istruzioni specifiche di I/O –I/O mappato in memoria (memory.
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Architetture dei Calcolatori (Lettere j-z) Il Processore (2)
L’organizzazione della comunicazione di I/O G. Vercelli
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Struttura dei sistemi operativi (panoramica)
Il livello Microarchitetturale
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
FACOLTÁ DI INGEGNERIA CORSO DI LAUREA INGEGNERIA INFORMATICA Progetto e Sviluppo di un Algoritmo di Scheduling per il Sistema RTAI Candidato: Luca Marzario.
1 Gestione del processore Il modello a processi sequenziali.
1.7 Risorse di sistema Comprendere le risorse di sistema Gestire le risorse di sistema.
Introduzione Cosa è un Sistema Operativo ?
Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di.
Il sistema operativo Vito Perrone
Ingresso/Uscita u Materiale in: –Queste trasparenze, non basta il testo! –Tanenbaum 2.4.1, 5.6.4, 5.6.5,
La macchina di von Neumann
GLI INTERRUPT PAG..
Esercizio 18 – Le eccezioni Creare un trap-handler che gestisca opportunamente le eccezioni 7 (Bus error durante accesso ad area dati/stack ) e 12 (overflow)
INPUT / OUTPUT. Connessione tra componenti CPU RAM DischiMonitor StampanteTastieraMouse BUS = Interfacce o Controller.
Le procedure di gestione input/output Poiché le operazioni di input/output sono più lente rispetto alla velocità del processore, occorrerà sincronizzarle.
Il Modello logico funzionale dell’elaboratore
TECNICHE DI INPUT/OUTPUT
ARCHITETTURA DEGLI ELABORATORI
Architettura degli elaboratori
I vettore interruzioni
La schedulazione dei processi
Architetture dei Calcolatori (Lettere j-z ) Il Processore
Architettura del calcolatore
Dimitri Caruso Classe 2^ Beat ISIS G. Meroni Anno Scolastico 2007/08
Seconda Università degli Studi di Napoli Facoltà di Economia Corso di Informatica Prof.ssa Zahora Pina.
GESTIONE INTERRUPT CPU INTEL 8086
ARCHITETTURA DI UN ELABORATORE
Sistemi di elaborazione e trasmissione delle informazioni
Struttura di un SO Menu Struttura SO Algoritmo Programma Processo
STRUTTURA DI UN COMPUTER
Sistema Operativo (Software di base)
Prima di iniziare… Durata attività: due lezioni frontali + una lezione laboratorio + compiti per casa Prerequisiti: elementi base architettura dei calcolatori.
Hardware e software Hardware Software
Architettura di una CPU
Arch. Elab. - S. Orlando 1 Progetto del processore e supporto del processore al SO (interruzioni – eccezioni) Salvatore Orlando.
Il nucleo del Sistema Operativo
INFORMATICA TECNOLOGIE INFORMATICHE INFORmazione autoMATICA
Calcolatori Elettronici Il Processore
Calcolatori Elettronici Il Processore (2)
Gestione del processore (Scheduler)
Gestione dei dispositivi di I/O:
Sistemi Elettronici Programmabili
MICROPROCESSORI Un processore è un circuito integrato in grado di effettuare operazioni di calcolo o di elaborazione dell'informazione Il circuito contiene.
1 Sommario degli argomenti  Sistemi operativi: DOS, Unix/Linux,Windows  Word processors: Word  Fogli elettronici: Excel  Reti: TCP/IP, Internet, ftp,
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
L’esecuzione dei programmi
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
I primi elaboratori Anni ‘50 Rigidamente sequenziali
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
STRUTTURA DELL’ELABORATORE
NUCLEO DI UN SISTEMA A PROCESSI Il modello a processi prevede l’esistenza di tante unità di elaborazione (macchine virtuali) quanti sono i processi; ogni.
Come esegue le istruzioni il microprocessore Un’istruzione è sempre composta da più operazioni elementari.
Gli interrupt Richiesta di attenzione alla cpu. Viene generato un segnale detto di interrupt diretto alla cpu.
Click to add text L’ Unità di Elaborazione. Struttura : Unità di controllo: coordina attività CPU ALU: unità aritmetico-logica, esegue operazioni tra.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Il Sistema Operativo Processi e Risorse
Transcript della presentazione:

Gli interrupt Quando una periferica richiede attenzione alla cpu genera un segnale detto di interrupt

Segnali di interrupt Gli interrupt sono segnali che vengono inviati alla cpu per comunicare eventi ben precisi A seconda dell’interrupt la cpu deve: Sospendere l’esecuzione del programma Attivare una routine specifica Un interrupt è un segnale hardware (elettrico) inviato dai vari dispositivi alla cpu Quando un processo vuole una operazione di i/o genera invece una interrupt software detta SVC (supervisor call)

Interrupt handler È quel «reparto» del sistema operativo che gestisce le interruzioni Possiede una serie di sottoprocedure che servono a: Accantonare il programma interrotto Accogliere il nuovo programma Esistono S.O. con più «interrupt handler», ciascuno per ogni dispositivo hardware che chiede l’interruzione ma nella maggior parte dei S.O. IH è unico.

Algoritmo della cpu La cpu esegue questo algoritmo ciclico in cui l’istruzione viene prelevata (fetch) interpretata (decode) ed eseguita (execute) in ciclo: Begin repeat fetch decode execute until fine end begin Fetch Decode Execute fine end

Algoritmo della cpu con gestione interruzioni Begin repeat if not interrupt then begin fetch decode execute end else routine interrupt until fine begin V Not interrupt F Fetch Decode Execute Routine interrupt fine end

Registro di stato Ogni programma in esecuzione viene dotato di un REGISTRO DI STATO di questo tipo: Stato: informazioni sullo stato di esecuzione del programma Programm counter: indirizzo della prossima istruzione da eseguire Lunghezza: lunghezza istruzione eseguita Stato del programma Programm counter lunghezza

Registro di stato Per eseguire l’interruzione il SO deve: Aggiornare e salvare il registro di stato inserendo l’informazione «programma interrotto», indirizzo della prossima istruzione da eseguire Eseguire la routine di gestione delle interruzioni Al termine ritornare all’esecuzione del programma sospeso Quando avviene l’interruzione il registro di stato del programma interrotto viene salvato In memoria centrale viene portato il registro di stato del programma da eseguire. Quando finisce la procedura subentrata, viene salvato il suo registro di stato e riportato in memoria il registro del programma «sospeso»

Switching tra 2 registri di stato Fase 1: salvataggio in memoria centrale del registro di stato 1 del programma 1 sospeso Fase 2: prelievo di un altro registro di stato 2 del programma 2 da eseguire Fase 3: ripristino del registro di stato 1 per continuare l’esecuzione del programma 1.

Tipi di interruzioni Ce ne sono 5 principali: Hardware interrupt: causata da malfunzionamento o guasto Supervisor call interrupt: richiesta di i/o Programm interrupt : istruzione errata, overflow, memory violation External interrupt: fine time slice, CTRL/ALT/CANC i/o interrupt: errore di comando, canale non connesso, dispositivo offline.

Interrupt multipli Cosa succede se, mentre la cpu sta eseguendo una routine di interrupt, gli viene chiesta un’altra interruzione? Si usano 2 tecniche Interruzioni vettorizzate: si associa una priorità ad ogni interrupt, se la richiesta ha priorità più alta, viene servita la nuova e accantonata quella in esecuzione. Ciclo di polling: se 2 o più periferiche fanno richiesta di interruzione ogni richiesta viene memorizzata in un flag associato alla periferica. La cpu fa la scansione ciclica di tutti i flag di ogni periferica e sceglie quella da servire.