Giustificazione dei sistemi di interrupt
|
|
- Alessio Simone
- 6 anni fa
- Visualizzazioni
Transcript
1 Sistemi di interruzione Giustificazione dei sistemi di interrupt Omero Tuzzi Sistemi di Interruzione 1
2 Sistemi di interruzione Dalla constatazione che i traferimenti di dati tra un dispositivo periferico ed il processore richiedono che quest ultimo, essendo più veloce, rimanga in attesa del primo, e dalla desiderabilità di far miglior uso della capacità di elaborazione disponibile, traggono giustificazione i sistemi di interrupt. Omero Tuzzi Sistemi di Interruzione 2
3 Interrupt Un interrupt o interruzione e un particolare segnale che un dispositivo di I/O invia al microprocessore ogni volta che e pronto ad eseguire una operazione. Un dispositivo di I/O deve essere programmato dal microprocessore in modo da generare un interrupt quando e pronto ad eseguire una operazione. In genere una linea del bus di controllo, detta interrupt request, e riservata per questo scopo. Una ulteriore linea del bus, detta interrupt acknowledge, viene riservata per comunicare al dispositivo di I/O che la richiesta di interruzione e stata accettata. Omero Tuzzi Sistemi di Interruzione 3
4 Interrupt 2 Il metodo di comunicazione basato su interrupt risulta particolarmente utile quando la velocita con cui il processore produce dati e diversa (tipicamente maggiore) da quella con cui possono essere comunicati ai dispositivi di I/O. In questo tipo di situazioni: Le procedure di elaborazione e di comunicazione vengono iniziate. La procedura che produce i dati viene eseguita dal processore fino a che il dispositivo di I/O comunica al processore, sollevando un interrupt, la propria disponibilita a ricevere dei dati. Quando il processore accetta l interruzione, la procedura di elaborazione viene sospesa e la comunicazione viene eseguita. Al termine della comunicazione, viene ripresa l esecuzione della procedura di elaborazione. Omero Tuzzi Sistemi di Interruzione 4
5 Si considerino le due procedure: Interrupt 3 ELABORA: Procedura di elaborazione di dati. STAMPA: Procedura di comunicazione verso la stampante (I/O). Al tempo t il dispositivo di I/O solleva un interrupt. Il flusso di esecuzione e il seguente: Omero Tuzzi Sistemi di Interruzione 5
6 Controllo da programma L esempio 1 mostra un tipico caso di I/O controllato da programma. Tale approccio ha lo svantaggio che il processore rimane bloccato in attesa di leggere e/o scrivere da/verso i dispositivi di I/O. La velocita con cui i caratteri arrivano dalla tastiera e milioni di volte inferiore alla velocita con cui il processore esegue qualsiasi operazione. Il processore e quindi sotto utilizzato. Esistono due soluzioni a questo problema: Interruzioni (Interrupt) Accesso diretto alla memoria (Direct Memory Access, DMA) Omero Tuzzi Sistemi di Interruzione 6
7 Interrupt Quando il processore riconosce il segnale di interrupt, prima di passare alla esecuzione della procedura di servizio dell interrupt, lo stato deve essere salvato in modo da poter riprendere l esecuzione della procedura di elaborazione. Il salvataggio dello stato generalmente coinvolge: Il Program Counter Lo Status Register I registri di utilizzo generale I moderni processori provvedono automaticamente al salvataggio delle informazioni. Il salvataggio delle informazioni richiede trasferimento di dati dai registri verso la memoria, quindi un ritardo. Omero Tuzzi Sistemi di Interruzione 7
8 Interrupt Il tempo che passa tra il momento in cui il processore riceve una richiesta di interrupt, ed il momento in cui la procedura di servizio viene eseguita, viene detto latenza di interrupt. In alcune applicazioni la latenza di interrupt deve essere mantenuta molto limitata. Per questo motivo il processore provvede al salvataggio della minima quantita di informazioni: Il Program Counter Lo Status Register Il resto delle informazioni sono salvate da apposite istruzioni poste all inizio della procedura di servizio. Omero Tuzzi Sistemi di Interruzione 8
9 Interrupt Alcuni microprocessori dispongono di due tipi di interrupt: Il primo provvede al salvataggio di tutte le informazioni necessarie per mantenere la coerenza del programma in esecuzione. Questo tipo di interrupt presenta un tempo di latenza maggiore. Il secondo provvede solo al salvataggio delle informazioni essenziali e demanda alla procedura di servizio il resto delle operazioni di salvataggio. Questo tipo di interrupt ha un tempo di latenza molto piccolo. Gli interrupt vengono utilizzati in tutte le situazioni in cui un evento esterno al calcolatore deve causare la sospensione temporanea di un programma e l esecuzione di un altro. Il meccanismo degli interrupt è fondamentale per i sistemi in tempo reale (Real Time). Omero Tuzzi Sistemi di Interruzione 9
10 Interrupt Un interrupt puo arrivare al processore in qualsiasi momento. Ci sono situazioni in cui la richiesta di interruzione non deve essere accettata dal processore. Situazioni tipiche in cui il processore non deve accettare una interruzione sono: Quando non sono disponibili dati da inviare al dispositivo che richiede l interruzione. Quando una procedura di servizio di un interrupt modifica i dati utilizzati dalla procedura interrotta. Una possibilita consiste nell introdurre istruzioni macchina per la abilitazione/disabilitazione del riconoscimento degli interrupt. Omero Tuzzi Sistemi di Interruzione 10
11 Interrupt Si consideri in dettaglio l evoluzione temporale dei segnali di richiesta e di accettazione degli interrupt: request acknowledge T1: Il processore comunica l accettazione dell interrupt. T0: Inizia la procedura di servizio T2: Termina la procedura di servizio Tra T0 e T1 il processore e in uno stato in cui accetta interruzioni. Questa situazione puo provocare un ciclo infinito di interruzioni che deve essere evitato. Omero Tuzzi Sistemi di Interruzione 11
12 Interrupt Sono state sviluppate diverse tecniche per impedire che il processore entri in un ciclo infinito di questo tipo: La prima soluzione consiste nel progettare il processore in modo che ignori la linea di richiesta degli interrupt fino a quando termina l esecuzione della prima istruzione della procedura di servizio. Se questa istruzione e quella di disabilitazione degli interrupt non si produce un ciclo infinito. La seconda soluzione consiste nel riservare un bit del registro di stato, detto maschera degli interrupt, che disabilita il riconoscimento degli interrupt. In questo caso il processore provvede a porre questo bit ad 1 (disabled) appena riceve un interrupt. La terza soluzione consiste nel rendere il processore sensibile al fronte di salita del segnale di richiesta di interrupt, piuttosto che al suo valore. Le linee di richiesta di questo tipo vengono dette edge-triggered. Omero Tuzzi Sistemi di Interruzione 12
13 Interrupt La sequenza eventi che si verificano per la gestione degli interrupt e la seguente: Un dispositivo produce una richiesta di interrupt (T0) Il processore interrompe il programma in esecuzione Gli interrupt vengono disabilitati Il processore accetta la richiesta di interrupt e la comunica al dispositivo. Il dispositivo risponde disattivando la richiesta di interrupt (T1). Il processore esegue la procedura di servizio dell interrupt. Il processore riprende l esecuzione del programma interrotto e riabilita gli interrupt (T2). Al termine di questa sequenza il processore si trova esattamente nello stesso stato in cui si trovava prima dell interruzione. Omero Tuzzi Sistemi di Interruzione 13
14 Interrupt Una interruz i o n e p u ò e s s e r e c a u s a t a d a n e c e s s i t à d i n a t u r a d i v e r s a. P e r e s e m p i o : interruzione periodica (p.es. ogni 10ms) per permettere al sistema operativo di computare il tempo speso da una applicazione e di cedere eventualmente la risorsa processore ad un altra applicazione (multiprogrammazione); interruzione di I/O: una periferica di I/O che informa su un suo particolare stato (p.es. pronta a ricevere dati) al fine di sincronizzarsi con il processore; interruzione per errori nel programma correntemente eseguito (p. es. overflow, esecuzione di un istruzione inesistente o privilegiata, etc.); tali interruzioni vengono anche chiamate traps; interruzione per guasti al sistema rivelati da apposite sonde; interruzione per riportare l intero sistema in uno stato noto (reset); interruzioni programmate (software interrupt) generate da un programma che voglia accedere una risorsa condivisa (es. periferiche di I/O) e per questo chiede la mediazione del sistema operativo. Sono le uniche interruzioni ad essere sincrone con il programma correntemente in esecuzione. Omero Tuzzi Sistemi di Interruzione 14
15 Interrupt Normalmente un processore utilizza molti dispositivi di I/O. I problemi derivanti dall avere piu dispositivi si verificano quando: E necessario riconoscere quale dispositivo ha sollevato l interrupt. Due dispositivi richiedono una interruzione nello stesso istante. Un dispositivo richiede una interruzione mentre il processore sta eseguendo una procedura di servizio dell interrupt di un altro dispositivo. Questi problemi sono stati affrontati e diverse soluzioni sono state proposte. Il metodo utilizzato e specifico del tipo di architettura ed e un fattore da considerare per decidere se una certa macchina e adatta per una specifica applicazione. Omero Tuzzi Sistemi di Interruzione 15
16 Identificazione del dispositivo Si consideri la struttura ad n dispositivi mostrata: CPU Vcc INTR INTR INTR1 INTR2 INTRn Le porte utilizzate sono dette open-drain e funzionano come interruttori pilotati da un segnale binario: Quando INTRi vale 0 l interruttore risulta aperto. Quando INTRi vale 1 l interruttore risulta chiuso. Omero Tuzzi Sistemi di Interruzione 16
17 Identificazione del dispositivo Quando nessuno dei segnali di interrupt INTRi vale 1, tutti gli interruttori risultano aperti e la linea di interrupt INTR e mantenuta ad una tensione pari a Vcc, il cui valore logico e 1. La linea INTR e quindi a 0. Quando uno dei dispositivi vuole inviare un interrupt pone ad uno il segnale INTRi e chiude quindi uno degli interruttori. In questo modo la linea INTR risulta connessa a massa e quindi assume il valore logico 0. La linea interna INTR vale quindi 1. Il processore riceve quindi un interrupt ma non e in grado di identificare quale dispositivo lo ha sollevato. Omero Tuzzi Sistemi di Interruzione 17
18 Identificazione del dispositivo Per consentire l identificazione, ogni dispositivo dispone di un particolare bit nel registro di stato detto Interrupt Request (IRQ) che viene posto ad uno quando il dispositivo solleva una richiesta di interruzione. Una volta ricevuto il segnale di interrupt il processore inizia ad interrogare i dispositivi in un certo ordine. Il primo dispositivo il cui bit IRQ vale 1 e quello che ha sollevato la richiesta di interrupt. La corrispondente procedura di servizio viene cosi eseguita dal processore. Questo schema viene detto Polling. E un metodo semplice ma implica un tempo elevato per l interrogazione dei vari dispositivi di I/O. Omero Tuzzi Sistemi di Interruzione 18
19 Identificazione del dispositivo Una tecnica alternativa e piu efficiente prevede che sia il dispositivo che solleva la richiesta di interrupt ad identificarsi, inviando al processore un opportuno codice. Per la comunicazione viene utilizzato il bus di sistema. Il bus e accessibile al dispositivo di I/O solo quando il processore lo rilascia, attivando il segnale di interrupt acknowledge. In genere tale codice coincide con l indirizzo di partenza della corrispondente procedura di servizio. Non e necessario che il dispositivo comunichi l indirizzo completo ma solo una parte, tipicamente i bit meno significativi. I piu significativi sono fissati per ogni processore. Omero Tuzzi Sistemi di Interruzione 19
20 Identificazione del dispositivo Questo approccio, detto interrupt vettorizzato o vectored interrupt, implica che la procedura di servizio di un dato dispositivo deve iniziare sempre allo stesso indirizzo. E possibile aggiungere flessibilita a questa tecnica memorizzando nella locazione di inizio di una data procedura di servizio una istruzione di salto all indirizzo desiderato. L insieme delle locazioni in cui vengono memorizzate le istruzioni di salto alle procedure di servizio viene detto vettore di interrupt o interrupt vector. A volte il vettore di interrupt contiene anche il valore da caricare nel registro di stato prima di iniziare l esecuzione della procedura di servizio. Omero Tuzzi Sistemi di Interruzione 20
21 Interrupt annidati E possibile che un dispositivo sollevi un interrupt mentre il processore sta eseguendo la procedura di servizio di un altro interrupt, ricevuto in precedenza. Spesso questa situazione non e desiderata ed il problema e risolto disabilitando le interruzioni all inizio di una procedura di servizio e riabilitandole al termine. In altri casi e fondamentale che il processore risponda ad alcuni interrupt anche durante l esecuzione di una procedura di servizio. A questo scopo viene definita una priorita per i vari dispositivi in modo che una interruzione venga servita solo se la sua priorita e maggiore di quella del dispositivo la cui procedura di servizio e in esecuzione. Omero Tuzzi Sistemi di Interruzione 21
22 Interrupt annidati Secondo questo schema quando il processore inizia l esecuzione di una procedura di servizio, pone il proprio livello di priorita pari a quello della procedura. In questo modo gli interrupt con priorita inferiore o uguale vengono disabilitati mentre quelli con priorita maggiore rimangono attivi e verranno quindi serviti dal processore. Il livello di priorita e generalmente salvato in alcuni bit del registro di stato. La priorita di alcuni interrupt e controllabile dal sistema operativo ma non dai processi dell utente. Il tentativo da parte di un programma utente di modificare il livello di priorita genera un interrupt corrispondente ad una particolare eccezione detta eccezione di privilegio. Omero Tuzzi Sistemi di Interruzione 22
23 Interrupt annidati Per realizzare questa soluzione e necessaria una architettura come quella mostrata nella figura seguente: CPU INTRn INTR2 Priority Arbiter INTR1 Device 1 Device 2 Device n INTA1 INTA2 INTAn Ogni dispositivo ha una linea dedicata di interrupt request ed una di interrupt acknowledge. Il Priority Arbiter comunica al processore solo gli interrupt con priorita maggiore di quella corrente. Omero Tuzzi Sistemi di Interruzione 23
24 Richieste simultanee Quando due dispositivi sollevano una richiesta di interrupt simultaneamente il processore deve poter decidere quale servire immediatamente e quale ritardare. Nel caso di gestione basata sul polling, la priorita e implicita nell ordine in cui i dispositivi vengono interrogati. Nel caso di gestione basata sulla definizione delle priorita dei dispositivi (con priorita tutte diverse) la simultaneita non pone alcun problema. Il problema si manifesta quando la tecnica adottata e quella delle interruzioni vettorizzate. Diverse soluzioni possono essere adottate, dando luogo a differenti architetture. Omero Tuzzi Sistemi di Interruzione 24
25 Una possibile scelta architetturale e la seguente: Richieste simultanee CPU INTR INTA Device 1 Device 2 Device n La struttura mostrata puo essere estesa come segue: CPU INTR1 Priority Arbiter INTA1 INTRp Device 1.1 Device 1.2 Device 1.n INTAp Device p.1 Device p.2 Device p.m Omero Tuzzi Sistemi di Interruzione 25
26 Controllo delle richieste Un dispositivo di I/O solleva un interrupt quando e pronto per una operazione di trasferimento. Tuttavia, non tutti i dispositivi sono effettivamente utilizzati da un programma. E necessario fare in modo che solo i dispositivi utilizzati da uno specifico programma siano abilitati a sollevare un interrupt. A questo scopo, nel registro di stato dell interfaccia di un generico dispositivo, viene riservato un bit detto interrupt enable (IE). Questo bit viene messo a 0 o ad 1 dal processore. Omero Tuzzi Sistemi di Interruzione 26
27 Accesso diretto alla memoria Piu efficiente del meccanismo di comunicazione basato sugli interrupt e quello detto di accesso diretto alla memoria o Direct Memory Access (DMA). In questo schema il trasferimento dei dati avviene direttamente tra il dispositivo e la memoria centrale, senza l intervento del processore. E necessario un controllore DMA (DMA controller) dedicato alla gestione del trasferimento. Il controllore DMA e in grado di generare tutti i segnali per la generazione degli indirizzi e per la gestione del bus che normalmente genera il processore. Il controllore DMA e comunque gestito dal processore. Omero Tuzzi Sistemi di Interruzione 27
28 Accesso diretto alla memoria Per effettuare la comunicazione tramite DMA il processore deve inviare al controllore DMA i seguenti dati: Indirizzo di partenza. Numero di parole del blocco di dati da trasferire. Direzione del trasferimento. Quando il controllore riceve questi dati inizia il trasferimento ed il processore rimane disponibile per altre operazioni. Al termine del trasferimento il controllore DMA solleva un interrupt per informare il processore. Il controllore DMA deve disporre di registri per memorizzare i dati inviati dal processore. Questi registri vengono gestiti dal processore come i registri di un generico dispositivo di I/O. Omero Tuzzi Sistemi di Interruzione 28
29 Accesso diretto alla memoria I registri del controllore DMA sono organizzati come segue: Regsitro di stato Indirizzo di partenza 31 0 IRQ IE R/W Done 31 0 Contatore delle parole 31 0 Al termine del trasferimento i bit Done ed IRQ vengono posto ad 1 e viene sollevato un interrupt. Il bit R/W indica la direzione del trasferimento. Il bit EI abilita gli interrupt. Il bit IRQ e usato per richiedere una interruzione. Omero Tuzzi Sistemi di Interruzione 29
30 Accesso diretto alla memoria L architettura necessaria per la realizzazione dell accesso diretto alla memoria e la seguente: DMA Controller Device 1 Device 2 Device n CPU RAM Omero Tuzzi Sistemi di Interruzione 30
31 Riferimenti Bibliografici Sergio Congiu: (Patron editore, Terza Edizione) C. Brandolese: Slides da (Politecnico di Milano) Omero Tuzzi Sistemi di Interruzione 31
Il ciclo del processore semplificato BOOTSTRAP FETCH EXECUTE
Roadmap Inquadramento del problema La fase di interrupt nel ciclo del processore Le cause di interruzione Le fasi di uninterruzione Ripristino del programma Latenza Identificazione di dispositivi: soluzioni
DettagliPeriferiche CPU. Misure e Sistemi Microelettronici Sistemi 6-1 SREG. Data Bus Address Bus Control Bus
Periferiche Interface Interface Interface Interface CPU SREG CREG DREG Il processore scambia informazioni con le periferiche attraverso dei registri. Tipicamente: Control REGister; Status REGister; Data
DettagliComponenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni
Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria
DettagliInterruzioni. Calcolatori Elettronici I. prof. Giuseppe De Pietro
Interruzioni Calcolatori Elettronici I prof. Giuseppe De Pietro Corso di Calcolatori Elettronici I A.A. 2010-2011 Interruzioni Lezione 17 Università degli Studi di Napoli Federico II Facoltà di Ingegneria
DettagliIl sistema delle interruzioni nel processore MC68000 (cenni)
Corso di Calcolatori Elettronici I A.A. 2011-2012 Il sistema delle interruzioni nel processore MC68000 (cenni) Lezione 33 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria
DettagliComponenti principali
Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria
DettagliLA GESTIONE DELLA I/O
LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono
DettagliIl problema dello I/O e gli Interrupt. Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano
Il problema dello I/O e gli Interrupt Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano Il Calcolatore e le periferiche Periferica Decodifica Indirizzi Circuiti di Controllo Registri
DettagliComponenti e connessioni. Capitolo 3
Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura
DettagliUniversità degli Studi di Cassino
Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2004/2005 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione
DettagliInformatica Generale 07 - Sistemi Operativi:Gestione dei processi
Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Cosa vedremo: Esecuzione di un programma Concetto di processo Interruzioni Sistemi monotasking e multitasking Time-sharing Tabella dei
DettagliModi di esecuzione user / kernel
Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2006/2007 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione
DettagliComunicazione di I/O
Corso di Informatica 2 Prof. Sciuto Comunicazione di I/O Daniele Paolo Scarpazza Dipartimento di Elettronica e Informazione Politecnico di Milano May 12th 2004 1 Nota sui termini Nelle slide che seguono
DettagliCapitolo 2: Strutture dei sistemi di calcolo
Capitolo 2: Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di protezione Struttura delle reti di calcolatori
DettagliCapitolo2: Architettura del calcolatore
Capitolo2: Architettura del calcolatore Funzionamento di un calcolatore general purpose. Struttura dell input/output. Struttura della memoria. Gerarchia di memorizzazione. Protezione hardware. ng. delle
DettagliCorso di Calcolatori Elettronici I. Interruzioni. Prof. Roberto Canonico
Corso di Calcolatori Elettronici I Interruzioni Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione Corso di Laurea
DettagliCiclo del Processore. Memoria
Ciclo del Nella figura seguente è riportata la rappresentazione semplificata ed essenziale di un computer. RESET Canali Di Ingresso Uscita Uscita Ingressi Fig. 1 Rappresentazione semplificata di un computer
Dettagli1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione
1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione su un sistema con una sola CPU? 2. Qual è la differenza tra un interruzione e una trap? Si faccia qualche esempio. 1.
DettagliBootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO:
Bootstrap Bootstrap All accensione di un calcolatore vengono attivati programmi di diagnostica scritti nella ROM (Read Only Memory) che verificano l assenza di guasti Poi viene attivato il programma di
DettagliPrincipali periferiche
Principali periferiche Timer Periferica per il conteggio esatto del tempo Esempio: 8254 3 contatori "indietro" da 16 bit: si può impostare un valore iniziale fino a 0xFFFF in ciascuno dei tre contatori;
DettagliMemoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
Dettagliil Nucleo e la gestione dei processi
il Nucleo e la gestione dei processi 1. Programmi, processi e risorse Differenza fra programmi e processi Il Programma rappresenta la descrizione del procedimento logico (algoritmo) che deve essere eseguito
DettagliARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!
ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! MACCHINA DI VON NEUMANN! UNITÀ FUNZIONALI fondamentali! Processore
DettagliLezione XII: La gestione delle eccezioni in MINIX
1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 4 aprile 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia
DettagliCapitolo 13 Il sottosistema di ingresso/uscita
Capitolo 13 Il sottosistema di ingresso/uscita Elementi di base del sottosistema di I/O I dispositivi di I/O sono collegati al bus di sistema attraverso una interfaccia che risolve i problemi di sincronizzazione
DettagliG L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi
G L O S S A R I O BIT: acronimo di Binary Digit. E l unità elementare di informazione. Può assumere solo il valore 0 o 1. CALCOLATORE: macchina che opera la trasformazione dei dati (informazioni) HARDWARE:
DettagliLezione 15. L elaboratore Elettronico
Lezione 15 Architettura di un calcolatore L elaboratore Elettronico Un elaboratore elettronico è una macchina elettronica in grado di elaborare dati secondo le specifiche fornite da un algoritmo Internamente
DettagliSistemi di Elaborazione delle Informazioni
SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2016/2017 1 Programma del corso Informatica di
DettagliCalcolatori Elettronici B a.a. 2004/2005
Calcolatori Elettronici B a.a. 2004/2005 GESTIONE DELL INPUT/OUTPUT Massimiliano Giacomin 1 Livello del linguaggio specializzato Ln Traduzione (compilatore) o interpretazione da parte di un interprete
DettagliIl polling consiste nella scansione ciclica, da parte della CPU, di tutte le periferiche per verificare la disponibilità o meno alla comunicazione.
TECNICHE DI INTERRUZIONE NEI MICROCOMPUTER Abbiamo analizzato nel modulo E la procedura con cui avviene lo scambio di informazioni in un microcomputer tra la CPU e la memoria. Il µp, che svolge la funzione
DettagliLivelli del sottosistema di I/O
Input/Output 1 Livelli del sottosistema di I/O Software di I/O di livello utente Software di sistema indipendente dal dispositivo Driver dei dispositivi Gestori delle interruzioni Hardware Modo utente
DettagliInput/Output (Cap. 7, Stallings)
Input/Output (Cap. 7, Stallings) Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi Tutti più lenti della CPU e della RAM Necessità di avere moduli
DettagliISA Input / Output (I/O) Data register Controller
ISA Input / Output (I/O) Numerose Periferiche di tanti tipi diversi, collegati alla CPU mediante BUS diversi. Solo Input (tastiera, mouse), producono dati che la CPU deve leggere. Solo Output (Schermo),
DettagliCorso di Informatica 2 Prof. Sciuto; Lezione su Bus e I/O.
Corso di Informatica 2 Prof. Sciuto Comunicazione di I/O Daniele Paolo Scarpazza Dipartimento di Elettronica e Informazione Politecnico di Milano 30 Maggio 2005 1 Convenzioni sui termini e sui segnali
DettagliIl calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica
Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione
DettagliElementi di informatica
Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come
DettagliElementi di informatica
Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come
DettagliI dispositivi di input/output
I dispositivi di input/output I dispositivi di input/output (anche detti periferiche), permettono di realizzare l'interazione tra l'uomo e la macchina La loro funzione primaria è quella di consentire l'immissione
DettagliMacchina di von Neumann/Turing
Macchina di von Neumann/Turing Concetto di programma memorizzato Memoria principale per dati e istruzioni ALU opera su dati in formato binario Unità di controllo che interpreta le istruzioni in memoria
DettagliMemoria cache, interrupt e DMA
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliARCHITETTURA DI UN ELABORATORE
ARCHITETTURA DI UN ELABORATORE memoria centrale Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). John von Neumann (Neumann János) (December 28, 1903
DettagliTEORIA DEI SISTEMI OPERATIVI. Sistemi monoprogrammatie multiprogrammati
TEORIA DEI SISTEMI OPERATIVI Sistemi monoprogrammatie multiprogrammati 1 STRUTTURA DEL SISTEMA OPERATIVO UTENTE La struttura di un sistema operativo è di tipo gerarchico: i programmi che lo compongono
DettagliCALCOLATORI ELETTRONICI II
CALCOLATORI ELETTRONICI II L INTERFACCIA PARALLELA Argomenti della lezione Le interfacce parallele Il dispositivo Intel 855 Architettura Funzionamento Le interfacce parallele Esempio Le interfacce parallele
DettagliSistemi Operativi. La gestione delle risorse
Sistemi Operativi La gestione delle risorse Introduzione Il sistema operativo ha il compito di fornire la gestione dell hardware ai programmi dell utente. Utente utilizza i programmi applicativi Programmi
DettagliArchitettura di un sistema di calcolo
Richiami sulla struttura dei sistemi di calcolo Gestione delle Interruzioni Gestione della comunicazione fra processore e dispositivi periferici Gerarchia di memoria Protezione. 2.1 Architettura di un
DettagliArchitettura di von Neumann
Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Architettura di von Neumann Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
DettagliArchitettura di von Neumann
Fondamenti di Informatica per la Sicurezza a.a. 2007/08 Architettura di von Neumann Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
DettagliCorso di Informatica
CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Il Processore (CPU) 2 rchitettura del processore CPU Unità di Controllo Unità ritmetica Logica
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
Università degli Studi di Cassino e del Lazio Meridionale di Calcolatori Elettronici Eccezioni ed Interruzioni Anno Accademico 2013/2014 Alessandra Scotto di Freca Si ringrazia il prof.francesco Tortorella
DettagliArchitettura hardware
Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliIl Processore. Informatica di Base -- R.Gaeta 27
Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
DettagliSistemi Operativi. Sottosistema di I/O
Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O Patrizia Scandurra Università degli Studi di Bergamo a.a. 2011-12 Sommario L hardware di I/O Struttura Interazione tra computer e controllori
DettagliStruttura di un elaboratore
Struttura di un elaboratore Fondamenti di Informatica 1 Modello architetturale di un computer Ogni computer è costituito da un insieme di blocchi funzionali tra loro interconnessi da sistemi di comunicazioni,
DettagliIl processore. Istituzionii di Informatica -- Rossano Gaeta
Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
DettagliInfluenza dell' I/O sulle prestazioni (globali) di un sistema
Influenza dell' I/O sulle prestazioni (globali) di un sistema Tempo totale per l'esecuzione di un programma = tempo di CPU + tempo di I/O Supponiamo di avere un programma che viene eseguito in 100 secondi
DettagliCosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)
Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) 1^ parte Cosa è Arduino? Arduino è una piattaforma di sviluppo open-source basata su una semplice scheda
DettagliLez. 4 L hardware. Prof. Pasquale De Michele Gruppo 2
Lez. 4 L hardware 1 Dott. Pasquale De Michele Dipartimento di Matematica e Applicazioni Università di Napoli Federico II Compl. Univ. Monte S.Angelo Via Cintia, I-80126, Napoli pasquale.demichele@unina.it
DettagliProgramma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori
Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Cos è un Calcolatore? Un computer (calcolatore) è una macchina
DettagliSecondo l architettura di Von Neumann il bus rappresenta il punto di interconnessione di tutti i componenti del calcolatore.
Secondo l architettura di Von Neumann il bus rappresenta il punto di interconnessione di tutti i componenti del calcolatore. Sui bus si attestano periferiche caratterizzate da funzioni e velocità molto
DettagliARCHITETTURA DI UN SISTEMA DI ELABORAZIONE
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente
DettagliSistemi di numerazione
SOMMARIO Sistemi di numerazione...2 Sistema decimale (o a base 10)...2 Sistema binario...2 Operazioni sui numeri binari...3 Espressioni logiche...4 Definizione...4 Prodotto Logico : AND...4 Somma Logica
DettagliCAPITOLO 3 Operazioni di I/O
CAPITOLO 3 Operazioni di I/O OPERAZIONI DI I/O Nella slide sono distinti tre differenti tipi di operazioni di I/O che possono essere I/O Programmato o I/O Interrupt-Driven oppure di tipo DMA, Direct Memory
DettagliCapitolo 7: Input/Output. Es.1 - Bus sincrono. Es.1 - Risposta (a)
Esercitazione di Calcolatori Elettronici Ing. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Capitolo 7: Input/Output Capitolo 7 Input/Output Esercizi sul BUS: 1. Bus sincrono 2. Arbitraggio
DettagliSottosistemi ed Architetture Memorie
Sottosistemi ed Architetture Memorie CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II La memoria centrale Memoria centrale: array di
DettagliL ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O
L ARCHITETTURA DEI CALCOLATORI Il processore La memoria centrale La memoria di massa Le periferiche di I/O Caratteristiche dell architettura 2 Flessibilità adatta a svolgere diverse tipologie di compiti
DettagliLezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario
Lezione 2 Principi Fondamentali di SO Interrupt e Caching Sommario Operazioni di un SO: principi fondamentali Una visione schematica di un calcolatore Interazione tra SO, Computer e Programmi Utente 1
DettagliMultiprogrammazione (circa 1965) Interruzioni e S.O. (1) Interruzioni e S.O. (2)
Interruzioni e S.O. (1) - E' compito del S.O. gestire le interruzioni tramite le interrupt routines. - Nel semplice modello di S.O. visto, in cui un solo programma alla volta è presente in memoria principale,
DettagliCLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico)
CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico) - Dedicati Quelli dei primi sistemi operativi. La macchina viene utilizzata da un utente per volta che può eseguire un solo programma per volta.
DettagliLa gestione dell I/O (Cap. 5, Tanenbaum)
La gestione dell I/O (Cap. 5, Tanenbaum) Prestazioni e generalità Gestione software Supporti su disco Orologi Lezione Architettura degli Elaboratori - 1 - A. Sperduti Pagina 1 Prestazioni e generalità
DettagliIl Processore: l unità di controllo
Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di
DettagliArchitettura di un processore basato su registri generali.
Architettura di un processore basato su registri generali. M. Esposito (mesposit@unina.it) 26 febbraio 2007 In Fig. 1 è riportato uno schema di principio che raffigura l architettura di un processore basato
DettagliSISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06.
SISTEMI OPERATIVI 06.a Il Nucleo Nucleo di un SO Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher 1 Architettura di base dei SO Due le strutture di riferimento: a
DettagliStruttura dei Sistemi di Calcolo
Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 2009-2010 Copyright c 2000 04 Marino Miculan (miculan@dimi.uniud.it) La copia letterale e la distribuzione di questa presentazione nella sua integrità
DettagliARCHITETTURA DI UN ELABORATORE
RCHITETTUR DI UN ELORTORE Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). MCCHIN DI VON NEUMNN UNITÀ FUNZIONLI fondamentali Processore (CPU) Memoria
DettagliArchitettura dei computer
Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La
DettagliArchitettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer?
Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Cos'è un computer? 3 Cos'è un computer? E' un dispositivo in grado di Elaborare
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 1 Martedì 11-10-2016 1 Introduzione Un sistema operativo è un software
DettagliInterruzioni o eccezioni? 1
0 Eccezioni in ARM C.Fantozzi, M.Moro Interruzioni o eccezioni? 1 In ARM si usa il termine eccezione (exception) per indicare una generica interruzione, in una delle tante diverse forme (esterna, software,
DettagliStruttura hw del computer
Informatica per laurea triennale facoltà di medicina LEZIONE 3 Il processore, la memoria e l esecuzione dei programmi 1 Struttura hw del computer Il nucleo di un computer è costituito da 3 principali componenti:
DettagliComponenti di un processore
Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria
DettagliArchitettura di una CPU
Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1
DettagliIl Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire efficientemente l'elaboratore e le sue periferiche,
Dettagli6: Macchina di Von Neumann
Data: 8-10-2017 Pag: 6 6: Macchina di Von Neumann 1. Lo Schema di Von Neumann John Von Neumann, un ricercatore che in USA realizzò uno dei primi computer l'eniac: faceva 300 moltiplicazioni al secondo
DettagliCalcolatori Elettronici: introduzione
Calcolatori Elettronici: introduzione G. Lettieri 3 Marzo 2017 1 Introduzione e richiami La Figura 1 mostra l architettura generale di un calcolatore. Nel corso approfondiremo ogni componente. I principali
DettagliIl sistema di Input/Output
Corso di Calcolatori Elettronici I A.A. 2010-2011 Il sistema di Input/Output Lezione 35 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria
DettagliCorso di Calcolatori Elettronici I
Corso di Calcolatori Elettronici I Il sistema di Input-Output Roberto Canonico Università degli Studi di Napoli Federico II A.A. 2014-2015 Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015
DettagliCONTATORE/TIMER PROGRAMMABILE CTC Z80 1. Piedinatura 2. Struttura interna 4. Modo timer 5. Modo Counter 8. Programmazione del CTC 13
CONTATORE/TIMER PROGRAMMABILE CTC Z80 1 Piedinatura 2 Struttura interna 4 Modo timer 5 Modo Counter 8 Programmazione del CTC 13 Gerarchia di priorità delle interruzioni 17 Interfacciamento 17 Contatore/Timer
DettagliFunzionamento dei sistemi di calcolo Struttura dell I/O Struttura della memoria Gerarchie delle memorie Architetture di protezione Strutture delle
Capitolo 2: Strutture dei sistemi di calcolo Funzionamento dei sistemi di calcolo Struttura dell I/O Struttura della memoria Gerarchie delle memorie Architetture di protezione Strutture delle reti di calcolatori
DettagliIl sistema di I/O. Calcolatori Elettronici 1. Architettura a bus singolo. Memoria. Unità di I/O. Interfaccia. Unità di I/O.
Il sistema di I/O Calcolatori Elettronici 1 Architettura a bus singolo Memoria CPU Interfaccia Unità di I/O Interfaccia Unità di I/O Calcolatori Elettronici 2 1 Interfaccia Svolge la funzione di adattamento
DettagliOperazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU
Operazioni di I/O 1 Schema di collegamento fra dispositivi periferici e CPU Memoria CPU buffer interfaccia Registro di controllo Registro Di stato Unità di controllo Dispositivo fisico 2 1 Unità di interfaccia
DettagliArchitettura dei calcolatori
Architettura dei calcolatori Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Architettura dei calcolatori 2 Cos'è un computer?
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
di Cassino e del Lazio Meridionale Corso di Tecnologie per le Memorie Anno Accademico Francesco Tortorella Gerarchia di memoria: vista complessiva Gerarchia di memoria: tecnologie Accesso casuale (random):
DettagliINGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo
INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo Prof. Carlo Rossi DEIS - Università di Bologna Tel: 051 2093020 email: crossi@deis.unibo.it Classificazione Processori
DettagliElementi di informatica
Sia dato una memoria della capacità di 1 GB, avente tempo di accesso di 50ms e velocità di trasferimento di 20 MB/sec. Si vuole ricopiare l intero contenuto su un altra memoria identica, montata sullo
DettagliArchitettura degli Elaboratori - 1
Architettura degli Elaboratori - 1 Università degli Studi di Padova Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica docente: Alessandro Sperduti Obiettivi del Corso Descrizione dell architettura
DettagliIl modello di Von Neumann
Il modello di Von Neumann Appunti di STA per le classi seconde ind. informatiche Page 1 Il modello architetturale Per modello architetturale, si intende la descrizione delle parti del sistema e la loro
Dettagli5. I device driver. Device driver - gestori delle periferiche. Struttura interna del sistema operativo Linux. Tipi di periferiche. Tipi di periferiche
Device driver - gestori delle periferiche Struttura interna del sistema operativo Linux Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici Interagiscono con
DettagliIl supporto al sistema operativo
Politecnico di Milano Il supporto al sistema operativo Prof. Mariagiovanna Sami sami@elet.polimi.it 2007- Obiettivi e Funzioni Perché introdurre il sistema operativo? Convenienza Rende più facile usare
DettagliSistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
DettagliARCHITETTURA DI UN ELABORATORE
ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). La macchiana di Von Neumann: Non distingueva fra RAM
Dettagli