LA GESTIONE DELLA I/O

Documenti analoghi
Sistemi 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

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Input/Output (Cap. 7, Stallings)

Periferiche CPU. Misure e Sistemi Microelettronici Sistemi 6-1 SREG. Data Bus Address Bus Control Bus

Architettura hardware

Input/Output. Livelli del sottosistema di I/O

Componenti e connessioni. Capitolo 3

L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:

Sistemi Operativi. Sottosistema di I/O

Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:

Operazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU

Lezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario

Capitolo 13 Il sottosistema di ingresso/uscita

Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Sottosistemi ed Architetture Memorie

Il sistema di I/O. Sistemi Operativi 13.1

Capitolo 6 Le infrastrutture SoftWare

Struttura Logica del S.O:

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi

Sottosistema d ingresso uscita

CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico)

Esame di INFORMATICA Lezione 4

IO 1 Input Output a livello Hardware

Informatica Generale 06 - Introduzione ai Sistemi Operativi

Struttura interna del sistema operativo Linux

SISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06.

Struttura dei Sistemi di Calcolo

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

Modi di esecuzione user / kernel

Sistemi Operativi. Sottosistema di I/O

I SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore.

Secondo l architettura di Von Neumann il bus rappresenta il punto di interconnessione di tutti i componenti del calcolatore.

Il Sistema Operativo. Informatica Sistema Operativo 1

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino

La memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni

Memoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica

Corso di Calcolatori Elettronici I

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

Lezione 1: L hardware

Introduzione al funzionamento di un calcolatore elettronico

Input/output. Sistemi Operativi Lez. 32. Corso: Sistemi Operativi Danilo Bruschi A.A. 2009/2010

Informatica di Base - 6 c.f.u.

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU:

CAP9. Device drivers

La gestione dell I/O (Cap. 5, Tanenbaum)

Capitolo 7: Input/Output. Es.1 - Bus sincrono. Es.1 - Risposta (a)

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Modulo: Elementi di Informatica

Memoria cache, interrupt e DMA

Capitolo 5 Elementi architetturali di base

INFORMATICA GENERALE

Influenza dell' I/O sulle prestazioni (globali) di un sistema

Struttura dell elaboratore elettronico

Il sistema operativo

Il software: Istruzioni per il computer

Parte II. Introduzione ai sistemi operativi e WindowsX. Parte II 1

Introduzione ai Sistemi Operativi Corso di Informatica Laurea in Fisica. Corrado Santoro

- Dispensa V - IL SISTEMA OPERATIVO

Indice lezione: Pagina 2

Architettura dei calcolatori e Software di sistema

Sistema operativo (SO)

Richiami sull architettura del processore MIPS a 32 bit

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Corso di Informatica

Sistema operativo & file system 1

Architettura di una CPU

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.

Architettura dei calcolatori

Il sistema di Input/Output

I THREAD O PROCESSI LEGGERI

Struttura hw del computer

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

Dispositivi di I/O. Dispositivi di I/O. Prestazioni degli hard disk. Dispositivi di I/O (2) Architetture dei Calcolatori (lettere A-I)

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)

Lezione 15. L elaboratore Elettronico

La macchina di Von Neumann

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Sistemi 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.

L architettura del calcolatore

I sistemi operativi. Prof. Daniele Contarino

Macchine Astratte. Luca Abeni. February 22, 2017

Sistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Come è fatto un computer

Corso di Informatica

Personal Computer: introduzione

Il software: cenni sul sistema operativo

Il sistema di I/O. Calcolatori Elettronici 1. Architettura a bus singolo. Memoria. Unità di I/O. Interfaccia. Unità di I/O.

Sistemi di numerazione

interoperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse.

ARCHITETTURA DI UN ELABORATORE

Sistema Operativo (Software di base)

Architettura dei computer

Interfacciamento di periferiche I/O al μp 8088

TEORIA DEI SISTEMI OPERATIVI. Sistemi monoprogrammatie multiprogrammati

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Transcript:

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 uguali le modalità con cui i processi vedono i dispositivi e in cui i dispositivi sono gestiti dal S.O.

DRIVER Un driver è un programma che permette al S.O. Di scambiare inform. con i componenti HW o con disp. Esterni collegati al computer Un insieme di Driver standard viene fornito con il S.O Ogni produttore di periferiche allega un CD con driver specifici e ottimizzati per il proprio prodotto

Dispositivi logici o Canali I processi interagiscono con i dispositivi logici Ad ogni dispositivo fisico è associato un dispositivo logico Ai disp.fisici sono associate routine di basso livello ai dispositivi logici (Canali ) sono associate funzionalità di alto livello (open, read..) Gli scrittori di driver di ogni particolare periferica sono obbligati a rispettare gli standard di interfacciamento imposti dal S.O.

l hardware di I/O Tutte le periferiche di I/O si connettono al calcolatore mediante tre tipologie di componenti hardware Hw di comunicazione (porta) Hw di trasmissione (bus) Hw di interfaccia (controller)

Bus Pur essendo fisicamente unico può essere suddiviso a seconda della tipologia di segnali che porta in: ABUS (address) indirizzo del dispositivo a cui si intende accedere DBUS (data) dato che deve essere trasferito CBUS (control) controllano la comunicazione tra CPU e i vari dispositivi

Controller(hw di interfaccia) Componenti elettronici (più o meno complessi) che svolgono la funzione di adattamento(sia elettrico che logico) tra le periferiche ed il calcolatore Ogni controller ha generalmente tre registri Reg. di stato della periferica(letto dal computer libero/occupato) Reg. di controllo (scritto dal computer per specificare il tipo di op. da svolgere) Reg. dati (la CPU legge/scrive in questo reg i dati)

1. Attesa attiva o Polling I/O a controllo di programma: la CPU inizia, dirige e termina l operazione di I/O rimanendone in attesa del completamento Handsharing (stretta di mano) La cpu continua a leggere il bit busy del dispositivo finchè non lo trova sul valore 0 (disponibile) Specifica il comando nel registro di controllo e setta il bit command-ready a 1, così che la periferica se ne accorga e lo esegua Il Controller mette a 1 il bit busy (occupato) ed esegue il comando Tutti i dati vengono scambiati tramite una porta di lettura/scrittura Terminata l esecuzione vengono azzerati entrambi i bit

Attesa attiva o Polling Vantaggi Semplicità e basso costo tecnica --> utilizzabile in sistemi piccoli e poco complessi Svantaggi Scarso sfruttamento della CPU impegnata per la maggior parte del tempo nell esecuzione del ciclo di polling E difficile introdurre il concetto di urgenza

2. Interrup La periferica manda un segnale di interrupt quando è pronta La CPU verifica lo stato delle linee di richiesta dopo l esecuzione di ogni istruzione Se il controller gli ha mandato un segnale, la CPU salva i valori del Program counter e il contenuto del registro di stato e segnala l accettazione della richiesta Riconosce il tipo e passa il controllo alla relativa procedura di gestione dell interrupt Eseguite le operazioni relative all I/O, la CPU ripristina lo stato precedente l interrupt eseguendo l istruzione successiva a quella interrotta Vengono utilizzati anche per realizzare trap (interruzioni sw)

Riconoscimento degli interrupt Salto ad indirizzo fisso Esiste un unico segnale di INT. È compito della ruotine di gestione eseguire una scansione in polling dei registri di controllo di tutte le periferiche Segnali multipli Esiste un diverso indirizzo di mem. per ogni INT, che contiene l indirizzo a cui si trova la particolare routine di gestione Interruzione vettorizzata Il segnale di INT è unico, ma sul bus dati, la periferica interessata invia un codice con il quale si identifica

Interrupt Vantaggi Maggiore flessibilità, possibilità di gestire priorità e annidamenti Svantaggi Può passare del tempo dal momento in cui viene generato l interrupt all istante in cui viene riconosciuto Parte del tempo CPU viene impiegato per effettuare il salvataggio/ripristino dei registri

DMA-Direct Memory Access Viene utilizzato un disp. Hw (DMAC Controller) contenente un processore specifico capace di trasferire blocchi di dati tra la memoria e una periferica operando direttamente sul bus di mem. che lancerà un interrupt a trasferimento compiuto. Indirizzo base Indirizzo porta periferica lunghezza Controllo (codici errori)

Altri servizi del sottosistema di I/O I/O scheduling: trovare un ordine efficiente per eseguire le richieste di I/O Buffering: si provvede a memorizzare in opportune aree di memoria (buffer) i dati in input o in output prima degli opportuni trasferimenti Caching: memoria veloce nella quale si mantiene copia dei dati più recentemente usati Spooplig: (buffer su memoria di massa) dispositivo virtuale realizzato da un file su disco. Quando un processo chiude il proprio dispositivo virtuale il file viene trasferito al dispositivo fisico da un processo di sistema (spooler) che offre agli utenti la possibilità di vederlo /cancellarlo /sospenderlo