Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i...

19
Gestione Input Gestione Input Output Output A. Ferrari A. Ferrari

Transcript of Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i...

Page 1: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Gestione Input Gestione Input OutputOutput

A. FerrariA. Ferrari

Page 2: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

ConnessioniConnessioniIl computer dispone di connessioni Il computer dispone di connessioni hardware per i dispositivi di hardware per i dispositivi di input/outputinput/output

tastieratastiera

mousemouse

monitormonitor

stampantestampante

Page 3: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Connessioni HWConnessioni HW

Page 4: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.
Page 5: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Gestione Gestione dispositividispositivi

Ogni Sistema Operativo dispone di uno Ogni Sistema Operativo dispone di uno strumento software per la gestione dei strumento software per la gestione dei dispositivi.dispositivi.

Per ogni dispositivo esiste un driver (device Per ogni dispositivo esiste un driver (device driver) che permette al sistema operativo di driver) che permette al sistema operativo di gestire il dispositivo stesso.gestire il dispositivo stesso.

I driver devono essere installati manualmente I driver devono essere installati manualmente o automaticamente nel sistemao automaticamente nel sistema

Il driver integra il codice del Sistema Il driver integra il codice del Sistema Operativo con una serie di funzioni che Operativo con una serie di funzioni che permettono di operare con il dispositivopermettono di operare con il dispositivo

Page 6: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Gestione dei Gestione dei dispositividispositivi

Page 7: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

EsempioEsempio

Page 8: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

USBUSBL’interfaccia più utilizzata è USB L’interfaccia più utilizzata è USB (Universal Serial Bus)(Universal Serial Bus)

È stato progettato per consentire a più È stato progettato per consentire a più periferiche di essere connesse usando periferiche di essere connesse usando una sola interfaccia standardizzata e un una sola interfaccia standardizzata e un solo tipo di connettore e per migliorare solo tipo di connettore e per migliorare la funzionalità plug-and-play la funzionalità plug-and-play consentendo di collegare o scollegare i consentendo di collegare o scollegare i dispositivi senza dover riavviare il dispositivi senza dover riavviare il computer (hot swap).computer (hot swap).

Page 9: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

USB (versioni)USB (versioni)Lo standard 1.0 dell'USB (1996) supporta Lo standard 1.0 dell'USB (1996) supporta collegamenti a 1,5 Mbit/s.collegamenti a 1,5 Mbit/s.

La versione 1.1 (1998) aggiunge la La versione 1.1 (1998) aggiunge la modalità full speed, che innalza la modalità full speed, che innalza la velocità a 12 Mbit/s.velocità a 12 Mbit/s.

La versione 2.0 (2000) ha una velocità La versione 2.0 (2000) ha una velocità teorica di trasferimento a 480 Mbit/s.teorica di trasferimento a 480 Mbit/s.

La versione 3.0 (2008) raggiunge la La versione 3.0 (2008) raggiunge la velocità di 4,8 Gbit/s.velocità di 4,8 Gbit/s.

Page 10: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Controller USBController USBIl controllore USB si interfaccia al Il controllore USB si interfaccia al processore e alla memoria centrale.processore e alla memoria centrale.

Le istruzioni eseguite dalla CPU per Le istruzioni eseguite dalla CPU per gestire il controller USB possono gestire il controller USB possono utilizzareutilizzare

o uno spazio di indirizzi speciali per I/O e o uno spazio di indirizzi speciali per I/O e specifiche istruzioni di lettura/scritturaspecifiche istruzioni di lettura/scrittura

o una parte di indirizzi di memoria o una parte di indirizzi di memoria centrale e le normali istruzioni di centrale e le normali istruzioni di lettura/scrittura (memory mapped I/O)lettura/scrittura (memory mapped I/O)

Page 11: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

RegistriRegistriI dispositivi espongono una serie di I dispositivi espongono una serie di registri (locazioni di memoria)registri (locazioni di memoria)

I registri permettono di controllare le I registri permettono di controllare le funzionalità del dispositivofunzionalità del dispositivo

e di ricevere in formazioni dal e di ricevere in formazioni dal dispositivodispositivo

Page 12: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

EsempioEsempioNella simulazione Nella simulazione una testiera espone i una testiera espone i registriregistri

KEY che contiene KEY che contiene l’ultimo carattere l’ultimo carattere premutopremuto

STATUS che STATUS che contiene 1 se è contiene 1 se è stato premuto un stato premuto un tasto dopo la lettura tasto dopo la lettura da KEY 0 altrimentida KEY 0 altrimenti

Page 13: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Gestione Gestione dispositividispositivi

Nell’esempio la Nell’esempio la gestione è gestione è inefficiente a causa inefficiente a causa del polling del polling (interrogazione (interrogazione ciclica)ciclica)

Si tratta di busy-wait Si tratta di busy-wait (attesa attiva)(attesa attiva)

Normalmente i Normalmente i dispositivi di I/O dispositivi di I/O utilizzano la tecnica delle utilizzano la tecnica delle interruzioni (interrupt)interruzioni (interrupt)

Quando è pronto un Quando è pronto un nuovo dato il dispositivo nuovo dato il dispositivo interrompe il processo in interrompe il processo in esecuzioneesecuzione

ISR (Interrupt Service ISR (Interrupt Service Routine) è il tipo di Routine) è il tipo di funzione attivata funzione attivata dall’interuzionedall’interuzione

Page 14: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

EfficienzaEfficienzaI dispositivi interrupt-driven sono molto I dispositivi interrupt-driven sono molto più efficienti di quelli basati sul pollingpiù efficienti di quelli basati sul polling

DMA (Direct Memory Access) è un DMA (Direct Memory Access) è un componente Hardware che trasferisce componente Hardware che trasferisce automaticamente i dati dal dispositivo automaticamente i dati dal dispositivo alla memoria e viceversa senza alla memoria e viceversa senza interrompere la CPU se non per interrompere la CPU se non per comunicare il termine dell’operazionecomunicare il termine dell’operazione

Page 15: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

DMADMA

Page 16: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Gestione di una Gestione di una operazione di I/Ooperazione di I/O

Page 17: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

BufferizzazioneBufferizzazioneLa CPU e i dispositivi di I/O operano a velocità La CPU e i dispositivi di I/O operano a velocità sensibilmente differentisensibilmente differenti

Per evitare attese e rendere il più possibili Per evitare attese e rendere il più possibili asincrone le esecuzioni dei processi si utilizza la asincrone le esecuzioni dei processi si utilizza la tecnica della bufferizzazionetecnica della bufferizzazione

Ad esempio se la CPU, che lavora ad alta Ad esempio se la CPU, che lavora ad alta velocità, deve spedire alcuni dati alla velocità, deve spedire alcuni dati alla stampante, che opera a una velocità molto stampante, che opera a una velocità molto minore, scriverà tali dati nel buffer di memoria, minore, scriverà tali dati nel buffer di memoria, potendo così continuare a lavorare ad un altro potendo così continuare a lavorare ad un altro processo mentre la stampante può stampare il processo mentre la stampante può stampare il dato leggendolo dal buffer e non interrompendo dato leggendolo dal buffer e non interrompendo la CPUla CPU

Page 18: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

BufferBuffer

Page 19: Gestione Input Output A. Ferrari. Connessioni Il computer dispone di connessioni hardware per i dispositivi di input/output tastieramousemonitorstampante.

Plug & playPlug & playSia Windows che Linux supportano la Sia Windows che Linux supportano la tecnologia plug & play (collega e usa)tecnologia plug & play (collega e usa)

possibilità di connettere un nuovo possibilità di connettere un nuovo dispositivo senza installare i driverdispositivo senza installare i driver

Il Sistema Operativo “riconosce” la Il Sistema Operativo “riconosce” la categoria del dispositivo e “ricerca” il categoria del dispositivo e “ricerca” il driver fra quelli precedentemente driver fra quelli precedentemente installati o cerca di scaricarlo dalla reteinstallati o cerca di scaricarlo dalla rete