Gestió d’
Entrada/Salida
Index
• Introducció
• Funciones del sistema d’E/S
• Components dels dispositius d’E/S
• Controladors de dispositiu
• Controladors de dispositiu: Classificació
• Dispositius conectats per ports o projectats en memòra
• Dispositius de blocs i de caràcters
• Interacció computadora-controlador: Tipus d’entrada/sortida
• E/S programada
• E/S per interrupcions
• Rutina de tractament d’interrupcions
Introducció
La CPU és el principal element de l'ordinador
- processa dades i instruccions
Requereix col·laboració dels dispositius d'E/S:
- Perifèrics: Permeten la comunicació entre els usuaris i l'ordinador.
• Entrada: teclat, ratolí, …
• Sortida: impressora, pantalla, …
- Dispositius d'emmagatzematge. Proporcionen emmagatzematge no
volàtil de dades i memòria.
• Emmagatzematge secundari: discos i disquets
• Emmagatzematge terciari: cintes i sistemes d'arxiu
- Dispositius de comunicacions. Connecten l'ordinador amb altres
ordinadors a través d'una xarxa
• targetes de xarxa, mòdems
Són bastant lents
Funcions del sistema d’E/S
El sistema d'E/S s'ocupa de facilitar el maneig dels dispositius d'E/S
- Oculta característiques físiques i de funcionament.
Funcions:
- Enviament de comandaments als dispositius, rebre els seus
interrupcions i ocupar-se deseus errors.
- Oferir una interfície entre els dispositius i la resta del sistema simple i
fàcil d'usar
- Optimitzar l'E/S del sistema
- Proporcionar dispositius virtuals que permetin connectar qualsevol
tipus de dispositiu físic
- Permetre la connexió de nous dispositius d'E/S
Components dels dispositius d’E/S
Els dispositius d'E/S consten de:
- Un element electrònic (controlador o unitat d'E/S)
• Transfereix informació entre la memòria principal i els
perifèrics.
• Connectat al bus i al dispositiu.
• Poden controlar múltiples dispositius (p.e. el de disc)
• Poden incloure CPU i bus
- Un element mecànic (el dispositiu)
•. Es connecten a la CPU a través dels controladors
El SO normalment tracta amb el controlador, no amb el dispositiu.
- Estandardització: Fer servir un mateix controlador per a diferents
dispositius de diferents fabricants (exemple: SCASI o IDE)
Controladors de dispositius
Constitueix la interfície del dispositiu amb el bus de l'ordinador
La comunicació entre la CPU i el controlador es realitza a través dels
registres del controlador.
- Registre de dades: Guarda les dades d'entrada o sortida
- Registre d'estat: Indica si l'ordre s'ha executat, si hi ha hagut
errors, ..
- Registre de control: Indica al controlador les ordres a realitzar
Aquests registres:
- Formen part de l'espai normal d'adreces de memòria o,
- Tenen un espai d'adreces especial
Controladors de dispositius
Controladors de dispositius: Classificació
• Direcció d'E/S
- Dispositius connectats per ports
- Dispositius projectats en memòria
• Unitat de transferència
- Dispositius de blocs
- Dispositius de caràcters
• Interacció ordinador-controlador
- Entrada/sortida programada
- Entrada/sortida per interrupcions
- Accés directe a memòria (DMA)
Dispositius conectats per ports o
projectats en memòria
Dispositius per ports (arquitectures d'Intel)
- El controlador té assignat:
• un port d'E/S
• una interrupció
• un vector d'interrupció.
- Operacions específiques portin o portout en què s'indica
• Direcció de port
• Registre a manipular.
- Problema:
• Cal conèixer les adreces d'E/S
• Programar les instruccions especials d'E/S
Dispositius projectats en memòria (arquitectures de Motorola)
- Tenen assignat un rang d'adreces en memòria
- Les operacions es realitzen mitjançant instruccions màquina de maneig de
memòria (No hi ha operacions específiques)
Dispositius de blocs i de caràcters
Dispositius de blocs:
- Accés a nivell de bloc, seqüencial o aleatori
- Mandats: llegir, escriure, buscar, ..
- E/S directament o mitjançant el servidor de fitxers
- Accés possible a través de fitxers projectats en memòria
- Exemples: discos i cintes
Dispositius de caràcter:
- Accés a nivell de caràcter, seqüencial o aleatori
- Mandats: obtenir (get) o col·locar (put) un caràcter.
- Biblioteques per optimitzar i donar forma a aquest tipus
d'accessos: edició de
línies, finestres virtuals, …
- Exemple: terminals i impressores
Interacció computador-controlador:
Tipus d'entrada/sortida
1.Entrada/sortida programada.
- La CPU accedeix als registres des programa
- Consulta periòdica per detectar si el dispositiu està preparat
2.Entrada/sortida per interrupcions
- El dispositiu avisa la CPU quan està a punt
- L'E/S es fa mitjançant una rutina de servei d'interrupció
3. Accés directe a memòria.
- El controlador accedeix directament a memòria
- Quan l'operació finalitza avisa la CPU
E/S programada
1. La CPU verifica l'estat del controlador llegint el registre d'estat
2. Mentre el controlador no està llest el procés queda en un bucle
3. Quan el controlador està llest, la CPU realitza la transferència
llegint o escrivint dades al registre del controlador
Avantatge: No hi ha despesa de temps de gestió d'interrupció
- Idoni en sistemes de temps real en què la velocitat d'E/S és ràpida
Desavantatge: Grans temps d'espera.
Aplicació:
- Maquinari sense interrupcions
- Programes de control de canals d'E/S
E/S programada
1. El processador envia l'ordre d'E/S al
controlador del dispositiu i, en lloc
d'esperar,es dedica a altres tasques
2. Quan el dispositiu està preparat per
intercanviar dades s'activa una línia de
comanda de interrupció
3. El processador executa la rutina de
tractament deinterrupció i, en ella, la
transferència de dades.
E/S per interrupcions
E/S per interrupcions
• La gran majoria de CPU inclouen interrupcions vectoritzades
- Cadascuna està assignada a un dispositiu (o a un rang d'ells).
• Cada senyal d'interrupció tenen una determinada prioritat.
- Si s'activen diversos senyals simultàniament, es tractarà la de
major prioritat
• La CPU inclou, també, un mecanisme d'inhibició
- Els senyals inhibides (emmascarades) no són ateses fins que
passin a estar desinhibides.
Rutina de tractament d'interrupció
Les rutines de tractament d'interrupció solen tenir dues parts:
- Genèrica: Proporcionada pel SO
- Particular: La proporciona el fabricant o el SO (dispositiu estàndard)
La part genèrica permet:
1. Capturar la interrupció
2. Salvaguardar l'estat del processador
3. Activar la rutina de maneig de la interrupció
4. Indicar a l'planificador que ha de posar a punt per executar la rutina
particular
5. Desactivar la interrupció
6. Restaurar l'estat del processador
7. Cedir el control (RETI)
La part particular indica al planificador que encole la rutina particular (S'activarà
quan li arribi el seu torn de planificació).
Gràcies per la
vostra atenció!

Presentació gestió d’entrada sortida

  • 1.
  • 2.
    Index • Introducció • Funcionesdel sistema d’E/S • Components dels dispositius d’E/S • Controladors de dispositiu • Controladors de dispositiu: Classificació • Dispositius conectats per ports o projectats en memòra • Dispositius de blocs i de caràcters • Interacció computadora-controlador: Tipus d’entrada/sortida • E/S programada • E/S per interrupcions • Rutina de tractament d’interrupcions
  • 3.
    Introducció La CPU ésel principal element de l'ordinador - processa dades i instruccions Requereix col·laboració dels dispositius d'E/S: - Perifèrics: Permeten la comunicació entre els usuaris i l'ordinador. • Entrada: teclat, ratolí, … • Sortida: impressora, pantalla, … - Dispositius d'emmagatzematge. Proporcionen emmagatzematge no volàtil de dades i memòria. • Emmagatzematge secundari: discos i disquets • Emmagatzematge terciari: cintes i sistemes d'arxiu - Dispositius de comunicacions. Connecten l'ordinador amb altres ordinadors a través d'una xarxa • targetes de xarxa, mòdems Són bastant lents
  • 4.
    Funcions del sistemad’E/S El sistema d'E/S s'ocupa de facilitar el maneig dels dispositius d'E/S - Oculta característiques físiques i de funcionament. Funcions: - Enviament de comandaments als dispositius, rebre els seus interrupcions i ocupar-se deseus errors. - Oferir una interfície entre els dispositius i la resta del sistema simple i fàcil d'usar - Optimitzar l'E/S del sistema - Proporcionar dispositius virtuals que permetin connectar qualsevol tipus de dispositiu físic - Permetre la connexió de nous dispositius d'E/S
  • 5.
    Components dels dispositiusd’E/S Els dispositius d'E/S consten de: - Un element electrònic (controlador o unitat d'E/S) • Transfereix informació entre la memòria principal i els perifèrics. • Connectat al bus i al dispositiu. • Poden controlar múltiples dispositius (p.e. el de disc) • Poden incloure CPU i bus - Un element mecànic (el dispositiu) •. Es connecten a la CPU a través dels controladors El SO normalment tracta amb el controlador, no amb el dispositiu. - Estandardització: Fer servir un mateix controlador per a diferents dispositius de diferents fabricants (exemple: SCASI o IDE)
  • 6.
    Controladors de dispositius Constitueixla interfície del dispositiu amb el bus de l'ordinador La comunicació entre la CPU i el controlador es realitza a través dels registres del controlador. - Registre de dades: Guarda les dades d'entrada o sortida - Registre d'estat: Indica si l'ordre s'ha executat, si hi ha hagut errors, .. - Registre de control: Indica al controlador les ordres a realitzar Aquests registres: - Formen part de l'espai normal d'adreces de memòria o, - Tenen un espai d'adreces especial
  • 7.
  • 8.
    Controladors de dispositius:Classificació • Direcció d'E/S - Dispositius connectats per ports - Dispositius projectats en memòria • Unitat de transferència - Dispositius de blocs - Dispositius de caràcters • Interacció ordinador-controlador - Entrada/sortida programada - Entrada/sortida per interrupcions - Accés directe a memòria (DMA)
  • 9.
    Dispositius conectats perports o projectats en memòria Dispositius per ports (arquitectures d'Intel) - El controlador té assignat: • un port d'E/S • una interrupció • un vector d'interrupció. - Operacions específiques portin o portout en què s'indica • Direcció de port • Registre a manipular. - Problema: • Cal conèixer les adreces d'E/S • Programar les instruccions especials d'E/S Dispositius projectats en memòria (arquitectures de Motorola) - Tenen assignat un rang d'adreces en memòria - Les operacions es realitzen mitjançant instruccions màquina de maneig de memòria (No hi ha operacions específiques)
  • 10.
    Dispositius de blocsi de caràcters Dispositius de blocs: - Accés a nivell de bloc, seqüencial o aleatori - Mandats: llegir, escriure, buscar, .. - E/S directament o mitjançant el servidor de fitxers - Accés possible a través de fitxers projectats en memòria - Exemples: discos i cintes Dispositius de caràcter: - Accés a nivell de caràcter, seqüencial o aleatori - Mandats: obtenir (get) o col·locar (put) un caràcter. - Biblioteques per optimitzar i donar forma a aquest tipus d'accessos: edició de línies, finestres virtuals, … - Exemple: terminals i impressores
  • 11.
    Interacció computador-controlador: Tipus d'entrada/sortida 1.Entrada/sortidaprogramada. - La CPU accedeix als registres des programa - Consulta periòdica per detectar si el dispositiu està preparat 2.Entrada/sortida per interrupcions - El dispositiu avisa la CPU quan està a punt - L'E/S es fa mitjançant una rutina de servei d'interrupció 3. Accés directe a memòria. - El controlador accedeix directament a memòria - Quan l'operació finalitza avisa la CPU
  • 12.
    E/S programada 1. LaCPU verifica l'estat del controlador llegint el registre d'estat 2. Mentre el controlador no està llest el procés queda en un bucle 3. Quan el controlador està llest, la CPU realitza la transferència llegint o escrivint dades al registre del controlador Avantatge: No hi ha despesa de temps de gestió d'interrupció - Idoni en sistemes de temps real en què la velocitat d'E/S és ràpida Desavantatge: Grans temps d'espera. Aplicació: - Maquinari sense interrupcions - Programes de control de canals d'E/S
  • 13.
  • 14.
    1. El processadorenvia l'ordre d'E/S al controlador del dispositiu i, en lloc d'esperar,es dedica a altres tasques 2. Quan el dispositiu està preparat per intercanviar dades s'activa una línia de comanda de interrupció 3. El processador executa la rutina de tractament deinterrupció i, en ella, la transferència de dades. E/S per interrupcions
  • 15.
    E/S per interrupcions •La gran majoria de CPU inclouen interrupcions vectoritzades - Cadascuna està assignada a un dispositiu (o a un rang d'ells). • Cada senyal d'interrupció tenen una determinada prioritat. - Si s'activen diversos senyals simultàniament, es tractarà la de major prioritat • La CPU inclou, també, un mecanisme d'inhibició - Els senyals inhibides (emmascarades) no són ateses fins que passin a estar desinhibides.
  • 16.
    Rutina de tractamentd'interrupció Les rutines de tractament d'interrupció solen tenir dues parts: - Genèrica: Proporcionada pel SO - Particular: La proporciona el fabricant o el SO (dispositiu estàndard) La part genèrica permet: 1. Capturar la interrupció 2. Salvaguardar l'estat del processador 3. Activar la rutina de maneig de la interrupció 4. Indicar a l'planificador que ha de posar a punt per executar la rutina particular 5. Desactivar la interrupció 6. Restaurar l'estat del processador 7. Cedir el control (RETI) La part particular indica al planificador que encole la rutina particular (S'activarà quan li arribi el seu torn de planificació).
  • 17.