In entrambi i casi i dispositivi vengono comunque trattati alla stregua di indirizzi, con minime
|
|
- Agostina Colella
- 6 anni fa
- Visualizzazioni
Transcript
1 C7. SISTEMI DI I/O Architetture e dispositivi di I/O Vi sono diversi tipi di dispositivi: dispositivi di memorizzazione, dispositivi di trasmissione e interfacce uomo macchina. Nonostante la varietà, ci si può ricondurre ad alcuni concetti di base per capire come siano connessi e come siano controllati. Un dispositivo comunica con un sistema di calcolo inviando segnali e comunicando con il calcolatore tramite un punto di connessione, ovvero una porta. Se uno o più dispositivi usano in comune un insieme di fili, la connessione avviene su un bus. Un bus è un insieme di fili su cui opera un protocollo che specifica i messaggi inviabili attraverso i fili. Una tipica struttura a bus è quella riportata in figura. Si possono distinguere il bus PCI che connette il sottosistema CPU-memoria, il bus di espansione a cui si connettono dispositivi relativamente lenti (tastiera e mouse), il bus SCSI a cui sono collegate unità a disco. I dischi sono collegati al bus SCSI inserito nel relativo controllore, che è un insieme di componenti elettronici (con intelligenza, al contrario della porta) che può far funzionare una porta, un bus o un dispositivo. Per contro, un controllore SCSI non è semplice ed è spesso realizzato come una scheda circuitale semplice che si inserisce nel calcolatore e prende il nome di adattatore. L unità di elaborazione dà comandi e fornisce dati al controllore per portare a termine trasferimenti di I/O tramite uno o più registri per dati e segnali di controllo. La comunicazione con il controllore avviene attraverso la lettura e la scrittura, da parte dell unità di elaborazione, di configurazioni di bit in questi registri (LDR/STR). Questo schema prende il nome di isolated I/O. In alternativa, il controllore può disporre dell I/O mappato in memoria. In questo caso, i registri di controllo del dispositivo si fanno corrispondere a un sottoinsieme dello spazio d indirizzi della CPU, che esegue le richieste di I/O usando le ordinarie istruzioni di trasferimento di dati per leggere e scrivere i registri di controllo del dispositivo (IN/OUT). In entrambi i casi i dispositivi vengono comunque trattati alla stregua di indirizzi, con minime varianti. Interrogazione ciclica Il protocollo completo per l interazione fra la CPU e un controllore può essere intricato, ma si basa sul meccanismo di handshaking, che modella un accordo tra produttore e consumatore mediante un bit di stato occupato. La CPU legge ripetutamente questo bit, finché il dispositivo non ha pronti dei dati e lo pone a 0. In altre parole, la CPU entra in uno stato di attesa attiva o interrogazione ciclica (polling). Se controllore e dispositivo sono veloci, il metodo è ragionevole. In altri casi è più efficiente che il controllore invii un informazione alla CPU solo quando il dispositivo è pronto, meccanismo che sta alla base delle interruzioni.
2 Interruzioni La CPU ha un contatto, detto linea di interruzione, del quale controlla lo stato dopo l esecuzione di ogni istruzione. Quando rileva il segnale di un controllore nella linea di richiesta dell interruzione, la CPU salva lo stato corrente e salta alla routine di gestione dell interruzione che si trova a un indirizzo prefissato di memoria. Il controllore del dispositivo genera un segnale di interruzione della CPU lungo la linea di richiesta delle interruzioni, che la CPU rileva e recapita al gestore delle interruzioni, il quale a sua volta evade il compito corrispondente servendo il dispositivo. Nei sistemi operativi moderni sono necessarie capacità di gestione delle interruzioni più raffinate. Si deve ad esempio disporre di un meccanismo con più livelli di interruzioni, che sia in grado di rilevare un interruzione senza esaminare ciclicamente tutti i dispositivi e che, al bisogno, posponga la gestione dell interruzione. Questi compiti sono assolti dalla CPU e dal controllore delle interruzioni. Nella maggior parte delle CPU è inoltre presente una linea di interruzioni non mascherabili, riservata a errori di memoria non recuperabili e non disattivabile dalla CPU. Il meccanismo delle interruzioni accetta un indirizzo, ovvero un numero che seleziona da un insieme ristretto una specifica procedura di gestione delle interruzioni. Nella maggior parte delle architetture, questo indirizzo è uno scostamento relativo a una tabella detta vettore delle interruzioni, contenente gli indirizzi di memoria degli specifici gestori delle interruzioni. E usato anche per gestire un ampia gamma di eccezioni, come quelle causate da eventuali divisioni per 0, nonché per la gestione di interrupt software o trap. Accesso diretto alla memoria (DMA) Gestire grossi trasferimenti di dati demandando alla CPU le operazioni di gestione a contorno, nell ottica di quello che viene definito I/O programmato, è uno spreco. Per questo, in alcune architetture è presente un unità di elaborazione specializzata detta controllore dell accesso diretto alla memoria (DMA), che si fa carico di gestire alcuni di questi compiti. Per dare avvio a un trasferimento DMA, la CPU scrive in memoria un comando che contiene il puntatore alla locazione dei dati da trasferire, un puntatore alla destinazione e il numero di byte coinvolti. Il controllore DMA agisce quindi direttamente sul bus della memoria, presentando al bus gli indirizzi necessari per eseguire il trasferimento senza l ausilio della CPU. La fine delle operazioni del DMA sarà segnalata da un interrupt. Quando il controllore della DMA prende possesso del bus di memoria, la CPU è temporaneamente impossibilitata ad accedere alla memoria centrale. Questo processo è noto come sottrazione di cicli e può rallentare le computazioni della CPU. Tuttavia, l assegna-
3 mento del lavoro di trasferimento di dati a un controllore DMA migliora in generale le prestazioni complessive del sistema. Interfaccia di I/O per le applicazioni Come fa un applicazione ad aprire un file residente in un disco senza sapere di che disco si tratta? Una soluzione è quella di astrarre le differenze tra i dispositivi di I/O, riconducendosi ad alcuni tipi generali. A ognuno di questi tipi si accede per mezzo di un insieme di funzioni, ovvero un interfaccia. Le differenze vengono incapsulate in moduli del kernel, detti driver dei dispositivi: questi ultimi sono specifici per particolari dispositivi, ma comunicano con l esterno per mezzo delle interfacce uniformi. Lo scopo dello strato dei driver dei dispositivi è dunque quello di nascondere al sottosistema di I/O del kernel le differenze tra i controllori dei dispositivi. Ciò semplifica il lavoro di chi sviluppa il sistema operativo e di chi deve costruire nuovi dispositivi. Tuttavia, ogni sistema operativo ha le sue convenzioni circa l interfaccia. Dispositivi con trasferimento a blocchi o caratteri L interfaccia per i dispositivi a blocchi sintetizza tutti gli aspetti necessari per accedere alle unità a disco e ad altri dispositivi basati sul trasferimento di blocchi di dati. Ci si aspetta che il dispositivo comprenda istruzioni come read(), write() e in alcuni casi seek(). Alcune applicazioni possono trovare più conveniente trattare questi dispositivi come una semplice sequenza lineare di blocchi, invece di usare i meccanismi del file system che introducono overhead risparmiabile: in questo caso si parla di I/O a basso livello. A un livello gerarchico immediatamente superiore di quello dei dispositivi a blocchi si può porre l accesso ai file mappato in memoria, che consente una virtualizzazione dei dispositivi in RAM per questioni di velocità. La tastiera è invece un esempio di dispositivo al quale si accede tramite un interfaccia a flusso di caratteri. Le chiamate di sistema fondamentali per le interfacce di questo tipo permettono a un applicazione di acquisire (get()) o inviare (put()) un carattere.
4 Dispositivi di rete La maggior parte dei sistemi operativi fornisce un interfaccia per l I/O di rete diversa da quella caratterizzata dalle operazioni read(), write() e seek(). Viene dunque fornita l interfaccia socket. I/O bloccante e non bloccante Un altro aspetto delle chiamate di sistema è la scelta fra I/O bloccante e non bloccante. Quando un applicazione impiega una chiamata di sistema bloccante (figura A), si sospende l esecuzione dell applicazione finché l I/O non è completato. E semplice e per questo non sempre adatto allo scopo. Alcuni processi necessitano invece di una forma non bloccante (figura B) di I/O, in cui le chiamate di I/O ritornano man mano che i dati sono pronti e il processo nel frattempo va avanti: un classico esempio è l interazione con il mouse sull interfaccia utente. Una possibile alternativa alle chiamate di sistema non bloccanti è costituita dalle chiamate di sistema asincrone, che restituiscono immediatamente il controllo al chiamante, senza attendere che l I/O sia stato completato. La differenza tra chiamate di sistema non bloccanti e asincrone è che una read() non bloccante restituisce immediatamente il controllo, fornendo i dati che è stato possibile leggere. Una read() asincrona, invece, richiede un trasferimento di cui il sistema garantisce il completamento, ma solo in un momento successivo e non prevedibile. Sottosistema per l I/O del kernel Scheduling di I/O Fare lo scheduling di un insieme di richieste di I/O significa stabilirne un ordine di esecuzione efficace. I kernel che mettono a disposizione l I/O asincrono devono essere in grado di tener traccia di più richieste di I/O contemporaneamente. A questo fine, alcuni sistemi annettono una tabella dello stato dei dispositivi alla coda dei processi in attesa. Gli elementi della tabella, uno per dispositivo di I/O, indicano il tipo, l indirizzo e lo stato del dispositivo: non funzionante, inattivo o occupato. Se il dispositivo è impegnato nel servire una richiesta, il corrispondente elemento della tabella riporterà il tipo della richiesta ed altri parametri a essa relativi. Gestione del buffer In un ipotetico trasferimento di dati tra il modem e il disco bisogna tenere presente che il primo è mille volte più lento del secondo. Per migliorare le prestazioni si può ricorrere
5 a un meccanismo di doppia bufferizzazione, che svincola il produttore dal consumatore rendendo così meno critico il problema della loro sincronizzazione. Cache Sebbene buffer e cache siano introdotte per velocizzare le prestazioni, bisogna tenere presente che un buffer può contenere dati di cui non esiste un altra copia, mentre una cache, per definizione, mantiene su un mezzo più efficiente una copia di informazioni già memorizzate. Code e uso esclusivo dei dispositivi Una coda di file da stampare (spool) è un buffer contenente dati per un dispositivo che non può accettare flussi di dati intercalati, ad esempio una stampante. Sebbene una stampante possa servire una sola richiesta alla volta, diverse applicazioni devono poter richiedere simultaneamente la stampa di dati, senza che questi si mischino. Protezione dell I/O Un processo utente che cerchi di impartire istruzioni di I/O illegali può disturbare il funzionamento normale di un sistema. Per questo motivo gli utenti non possono impartire in via diretta alcune istruzione, ma dovranno farlo attraverso il sistema operativo. Un programma utente, per eseguire I/O, invoca una system call per chiedere al sistema operativo di svolgere una data operazione nel suo interesse. Il sistema, passando alla modalità privilegiata, verifica che la richiesta sia valida e, in tal caso, esegue l operazione trasferendo il controllo all utente. Power management Non è un concetto strettamente di I/O, ma è ad esso correlato. Computer e dispositivi, infatti, usano energia elettrica per funzionare e generano calore: questo richiede ventilazione frequente. I sistemi operativi possono aiutare a migliorare l uso delle risorse disponibili. Nel cloud computing, ad esempio, le macchine virtuali possono essere spostate tra i server. Nel mobile computing quest esigenza è ancora più marcata, al fine di risparmiare batteria: i componenti che non sono utilizzati in un certo istante vengono spenti. Esiste inoltre una modalità che fa il minimo sindacale : il dispositivo cade in un sonno profondo, ma ha sempre un occhio mezzo aperto per reagire a stimoli esterni (pressione di bottoni, chiamate in arrivo...) Trasformazione delle richieste di I/O in operazioni dei dispositivi Una tipica richiesta bloccante di I/O può consumare un numero spaventoso di operazioni CPU. Nello schema riportato nella pagina successiva è rappresentato un tipico scenario in cui un processo utente richiede un I/O che prima o poi verrà soddisfatto (dati disponibili o output completato). In mezzo ovviamente c è un po di roba. Se la richiesta è soddisfabile subito (grazie a buffer o qualche altro meccanismo simile), il sottosistema kernel dell I/O imbocca una strada veloce, trasferisce i dati e ritorna subito dalla system call. Altrimenti entrano in gioco tutta una serie di meccanismi che coinvolgono device driver, gestore delle interruzioni e device controller al fine di soddisfare la richiesta del processo utente.
6 STREAMS I sistemi basati su UNIX implementano un interessante meccanismo, chiamato STREAMS. Esso consente a un applicazione di assemblare pipeline dinamicamente. Uno stream è una connessione full-duplex tra un device driver e un processo utente e consiste in una testa dello stream che si interfaccia col processo utente, una coda dello stream che controlla il dispositivo e zero o più moduli tra la testa e la coda. Prestazioni I device driver e il codice di I/O del kernel sono sempre software da eseguire, quindi è bene che non siano scritti coi piedi. I sistemi attuali, tuttavia, possono agevolare questo tipo di problematica grazie all esecuzione in multi-core, con alcuni core dedicati prevalentemente ad attività di kernel. Anche interruzioni e azioni di copiatura da dispositivo prevedono dell intervento da parte della CPU, così come la gestione del traffico di rete. Per migliorare le prestazioni in termini di I/O si possono ridurre il numero di context-switch, ridurre il numero di copie di dati (facendo attenzione al fatto che le bufferizzazioni possono comunque dare vantaggio), ridurre gli interrupt cercando di collezionare un certo insieme di dati, usare il DMA quando possibile, mantenere un sistema bilanciato (inutile avere una RAM superperformante con una CPU molto lenta). ***
Sistemi 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
DettagliSistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel
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
DettagliIl sistema di I/O. Sistemi Operativi 13.1
Il sistema di 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 Prestazioni 13.1 Introduzione Un elaborazione eseguita da
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
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
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
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. 2008-09 Sommario L hardware di I/O Struttura Interazione tra computer e controllori
DettagliInput/Output. Livelli 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 Di Driver dei didispositivi itii Gestori delle interruzioni Hardware utente kernel
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
DettagliSistemi Operativi (modulo di Informatica II) Sottosistema di I/O
Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario L hardware di I/O Struttura Interazione tra computer e controllori
DettagliSistemi di I/O. Contenuti. L hardware di I/O. Bus in un PC. L hardware di I/O. Le interfacce I/O per le applicazioni.
Contenuti L hardware di I/O. Sistemi di I/O Le interfacce I/O per le applicazioni. Il sottosistema di I/O del kernel. Trasformazione di richieste di I/O in operazioni hardware. Streams. Prestazioni. L
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
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
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
DettagliSistemi di I/O. Sistemi Operativi Giuseppe Prencipe. Architetture e dispositivi di I/O. Architetture e dispositivi di I/O
Sistemi di I/O Sistemi Operativi Giuseppe Prencipe Sistemi di I/O Un ruolo fondamentale in un sistema di calcolo è rivestito dai dispositivi di I/O I dispositivi di I/O che popolano un sistema di calcolo
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
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),
DettagliGerarchia fisica di memoria 1. Gerarchia fisica di memoria 2. Gerarchia fisica di memoria 3. Ricapitolazione di concetti base
Gerarchia fisica di memoria 1 Tempo di accesso Capacità tipica Ricapitolazione di concetti base Sistemi Operativi - T. Vardanega Pagina 92/113 Gerarchia fisica di memoria 2 La cache è suddivisa in blocchi
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. 2013-14 Pietro Frasca Lezione 15 Martedì 26-11-2013 1 Allocazione dei dispositivi e tecniche di spooling
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 sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione
Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia
DettagliGESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI
GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Gestione e organizzazione dei dischi COMPITI
DettagliSistemi Operativi Giovanni Conforti. Sistemi di I/O
Sistemi Operativi Giovanni Conforti Sistemi di I/O 1 Sistemi di I/O Un ruolo fondamentale in un sistema di calcolo è rivestito dai dispositivi di I/O I dispositivi di I/O che popolano un sistema di calcolo
DettagliStruttura interna del sistema operativo Linux
Struttura interna del sistema operativo Linux 5. I device driver A cura di: Anna Antola Giuseppe Pozzi DEI, Politecnico di Milano anna.antola/giuseppe.pozzi@polimi.it -versione del 30 marzo 2004-1-04.-04
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
DettagliLa memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni
La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso, misurata in base al tempo impiegato dal processore per accedere ad uno specificato indirizzo
DettagliArchitettura di un calcolatore
Architettura di un calcolatore Processore: CPU Componente elettronico costituito da minuscole componenti di silicio, chiamate CHIP. Esegue le istruzioni implementate nel SW, tramite una serie di operazioni
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
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
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
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
DettagliInput/output. Sistemi Operativi Lez. 32. Corso: Sistemi Operativi Danilo Bruschi A.A. 2009/2010
Input/output Sistemi Operativi Lez. 32 1 Ruolo del SO Le periferiche di I/O sono i dispositivi attraverso i quali un calcolatore scambia dati/ interagisce con la realtà esterna Per ogni periferica collegata
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
DettagliComponenti di un sistema operativo
Componenti di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Componenti di un S.O. Gestione dei processi Gestione della memoria primaria Gestione della memoria secondaria
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
DettagliPersonal Computer: introduzione
I.I.S. Benvenuto Cellini Corso di formazione tecnica Personal Computer: introduzione Prof. Alessandro Pinto v.2009 Architettura di Von Neumann Unità centrale di elaborazione Input Unità aritmetico-logica
DettagliL hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:
Il Software L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software: un insieme di programmi che permettono di trasformare un insieme di circuiti
DettagliCom è fatto un computer (seconda puntata) Appunti per le classi 1 A cura del prof. Ing. Mario Catalano
Com è fatto un computer (seconda puntata) Appunti per le classi 1 A cura del prof. Ing. Mario Catalano A che serve una memoria? Ovviamente, nel computer, come nel cervello umano, serve a conservare le
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
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16. Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16 Pietro Frasca Lezione 15 Martedì 24-11-2015 Struttura logica del sottosistema di I/O Processi
DettagliStruttura Logica del S.O:
Avvertenza Quanto segue NON è un libro, ma è una copia dei lucidi usati a lezione che NON sostituisce i libri di testo adottati e consigliati per l insegnamento di Informatica Generale. Questa copia è
DettagliIl Sistema Operativo. Informatica Sistema Operativo 1
Il Sistema Operativo Informatica Sistema Operativo 1 O.S.:.: un intermediario SW Applicativo Sistema Operativo HW Informatica Sistema Operativo 2 O.S. vs applicativi Applicativi accesso a un insieme ridotto
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
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
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
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
DettagliSistemi Operativi L-A
Universita` di Bologna Corso di Laurea in Ingegneria Informatica Sistemi Operativi L-A A.A. 2003-2004 Prof. Anna Ciampolini 1 Cos e` un Sistema Operativo? È un programma (o un insieme di programmi) che
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
DettagliCos e` un Sistema Operativo?
Cos e` un Sistema Operativo? È un programma (o un insieme di programmi) che agisce come intermediario tra l utente e l hardware del computer: fornisce un ambiente di sviluppo e di esecuzione per i programmi
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.
DettagliSottosistema d ingresso uscita
Lezione n.15 Sottosistema d ingresso uscita Le interfacce Sommario: Il sottosistema d ingresso/uscita (I/O) e le interfacce Gestione di un periferico a controllo di programma 1 Il sottosistema d ingresso/uscita
DettagliCAP9. Device drivers
Struttura interna del sistema operativo Linux CAP9. Device drivers Device drivers Gestori di periferiche Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici
DettagliArchitettura di un elaboratore. Il modello di von Neumann
Architettura di un elaboratore Il modello di von Neumann 4(5) componenti fondamentali unita di elaborazione: CPU memoria centrale: RAM periferiche (memoria di massa) bus di sistema bus di sistema CPU RAM
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à
DettagliSistemi Operativi: Concetti Introduttivi
Sistemi Operativi: Concetti Introduttivi 1.1 Principali funzioni di un Sistema Operativo 1.2 Cenni Storici 1.3 Classificazione dei Sistemi Operativi 1.4 Struttura dei Sistemi Operativi 1.5 Processi e gestione
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
DettagliDispositivi di I/O. Dispositivi di I/O. Prestazioni degli hard disk. Dispositivi di I/O (2) Architetture dei Calcolatori (lettere A-I)
Dispositivi di I/O Architetture dei Calcolatori (lettere A-I) Dispositivi di I/O Un dispositivo di I/O è costituito da due componenti: Il dispositivo fisico effettivo (disco, stampante, mouse, video, )
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,
DettagliCriteri di caratterizzazione di una memoria
La memoria Supporto alla CPU: deve fornire alla CPU dati e istruzioni il più rapidamente possibile; Archivio: deve consentire di archiviare dati e programmi garantendone la conservazione e la reperibilità
DettagliGestione software Il meccanismo delle interruzioni - 3
Il meccanismo delle interruzioni - 3 Il valore emesso sul canale dal controllore delle interruzioni designa il servizio richiesto alla CPU Tale valore è un indice nel vettore delle interruzioni, contenente
DettagliLa memoria principale
La memoria principale DRAM (Dynamic RAM) il contenuto viene memorizzato per pochissimo tempo per cui deve essere aggiornato centinaia di volte al secondo (FPM, EDO, SDRAM, RDRAM) SRAM (Static RAM) veloce
DettagliArchitettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)
Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) La macchina di Von Neumann Le periferiche Software (tutto ciò che non e tangibile) Il sistema operativo I programmi applicativi
DettagliEsame di INFORMATICA Lezione 4
Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Il sottosistema di memorizzazione (memoria) contiene dati + istruzioni, inseriti inizialmente tramite
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. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.
Programmi applicativi Un programma applicativo (o applicativo) è un eseguibile che può essere utilizzato dall utente e che ha funzionalità di alto livello (word processor, spreadsheet, DBMS) Univ. Milano-Bicocca
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
DettagliStruttura dell elaboratore elettronico
Struttura dell elaboratore elettronico Concetti di base della tecnologia dell Informazione e della Comunicazione Qual è il significato del termine informatica? E' la scienza che si propone di raccogliere,
DettagliI dischi ottici. Fondamenti di Informatica -- Rossano Gaeta
I dischi ottici Le tecnologie dei dischi ottici sono completamente differenti e sono basate sull'uso di raggi laser Il raggio laser è un particolare tipo di raggio luminoso estremamente focalizzato che
DettagliIl Sistema Operativo
Il Sistema Operativo Il sistema operativo Con il termine sistema operativo si intende l insieme di programmi e librerie che opera direttamente sulla macchina fisica mascherandone le caratteristiche specifiche
DettagliLezione 14. Di cosa parliamo in questa lezione? Driver ed interfacce delle periferiche di I/O. Le periferiche di I/O.
Di cosa parliamo in questa lezione? Lezione 14 Driver ed interfacce delle di I/O Sistemi operativi 1 Le di I/O 2 Le interfacce di I/O 3 Driver basati su polling 22 giugno 2017 4 Driver basati su interruzioni
DettagliLezione 3 Sistemi Operativi e misure di performance. Parleremo di
Lezione 3 Sistemi Operativi e misure di performance Parleremo di Ambienti di Elaborazione e Natura della computazione Classi di Sistemi Operativi Efficienza, Performance del Sistema, e Servizi Utente Sistemi
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:
DettagliIO 1 Input Output a livello Hardware
Architettura dei calcolatori e sistemi operativi Input Output IO 1 Input Output a livello Hardware Accesso delle periferiche Le unità periferiche interagiscono con il processore e la memoria centrale attraverso
DettagliLezione 2 Chiamate di procedura e risposta alle interruzioni
Modulo 1 U.D. 1 Lez. 2 Lezione 2 Chiamate di procedura e risposta alle interruzioni Sistemi Operativi I Modulo 1 - Architettura del Calcolatore Unità didattica 1 - Architettura e funzionamento dei sistemi
DettagliCorso di Informatica
Corso di Informatica Modulo T2 4 Input e output 1 Prerequisiti Il modello di Von Neumann Utilizzo elementare del computer. 2 1 Introduzione In questa Unità studiamo la parte del computer detta sottosistema
DettagliSistemi RAID. Motivazioni Concetti di base Livelli RAID. Sommario
Sistemi RAID 1 Motivazioni Concetti di base Livelli RAID Sommario 2 1 Motivazione L evoluzione tecnologica ha permesso di avere dischi sempre più piccoli e meno costosi E facile equipaggiare un sistema
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
DettagliVon Neumann Bottleneck
Von Neumann Bottleneck Gerarchia di memoria Struttura della Gerarchia Al livello 1 poniamo la memoria più veloce (piccola e costosa) Al livello n poniamo la memoria più lenta (grande ed economica) Scopo
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
DettagliCorso di Informatica
Corso di Informatica Modulo T2 3-La memoria 1 Prerequisiti Concetto di memoria Dati e istruzioni Bit e byte 2 1 Introduzione In questa Unità studiamo più in dettaglio la memoria del computer e le sue funzioni.
DettagliIL SOFTWARE DI SISTEMA
Software (sw) L esecuzione di programmi è lo scopo di un elaboratore L insieme dei programmi che un elaboratore può eseguire rappresenta il software in dotazione all elaboratore IL SOFTWARE DI SISTEMA
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?
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
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
DettagliInformatica di Base - 6 c.f.u.
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Architettura dei calcolatori III parte Dispositivi
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
DettagliIl file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.
Il File System Il file system È quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza i concetti
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
DettagliProf. Rossella Cancelliere
Laboratorio di Informatica e Statistica Chimica Industriale a.a 2004/05 Prof. Rossella Cancelliere Dip. Informatica Univ.Torino C.so Svizzera 185,Torino email:cancelli@di.unito.it tel: 011/670 67 77 Obiettivi
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
DettagliI SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore.
I SISTEMI OPERATIVI Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore. Le funzioni di un S.O. non sono definibili in modo esaustivo e puntuale così come non
Dettagli14 Struttura della memoria secondaria Struttura del disco Struttura del disco
14 Struttura della memoria secondaria 1 Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Affidabilità 2 14.1 Struttura del disco 3 14.1 Struttura del disco I dischi
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
DettagliUn semplice commutatore a pacchetto
Realizzazione di commutatori a pacchetto: cosa c e dentro un router IP? Prof. Ing. Carla Raffaelli Un semplice commutatore a pacchetto Una workstation con schede di rete e software per ricevere pacchetti
DettagliIl software: Istruzioni per il computer
Il software: Istruzioni per il computer Software applicativo aiuta a svolgere operazioni utili in vari campi programmi di videoscrittura, fogli elettronici, videogiochi Software di sistema permette l utilizzo
DettagliCome è fatto un computer
Come è fatto un computer COMPUTER = HARDWARE + SOFTWARE Hardware = Ferramenta Ovvero la parte elettronica e meccanica del PC Software = i programmi TIPI DI COMPUTER mainframe workstation server IL COMPUTER
DettagliSistema operativo. Interazione con il SO
Sistema operativo Il sistema operativo (SO) è un insieme complesso di programmi che, in modo coordinato, controlla le risorse del sistema e i processi che usano queste risorse. Per evidenziare le funzionalità
DettagliInput/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE
Input/output da file Il linguaggio C non contiene istruzioni di I/O, in quanto tali operazioni vengono eseguite tramite funzioni di libreria standard. Questo approccio rende estremamente flessibile e potente
Dettagli