Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porEduardo Muñoz Aguilar Modificado hace 9 años
1
1 Tema 13: Lectura y Escritura Sistemas Operativos (Tema 10 en apuntes prof. Rovayo)
2
2 Índice: 1.Dispositivos de L/E 2.Controladores de dispositivos 3.Modos de realizar las operaciones de L/E 4.Principios de diseño del software de L/E 5.Diseño modular del sistema de L/E 2 Tema 13: Lectura y Escritura
3
3 Índice: 1.Dispositivos de L/E 2.Controladores de dispositivos 3.Modos de realizar las operaciones de L/E 4.Principios de diseño del software de L/E 5.Diseño modular del sistema de L/E 3 Tema 13: Lectura y Escritura
4
44 1. Dispositivos de L/E Tema 13: Lectura y Escritura Para SO son cajas negras capaces de: Recibir órdenes Transferir información Informar sobre su estado Clasificaciones: Según forma de acceso: De acceso secuencial De acceso directo Por la forma de intercambiar información: Dispositivos de bloque Dispositivos de caracteres
5
5 Índice: 1.Dispositivos de L/E 2.Controladores de dispositivos 3.Modos de realizar las operaciones de L/E 4.Principios de diseño del software de L/E 5.Diseño modular del sistema de L/E 5 Tema 13: Lectura y Escritura
6
6 2. Controladores de dispositivos Tema 13: Lectura y Escritura 1.Controladores y adaptadores 2.Concepto de canal 3.Controladores múltiples 4.Estructura lógica de un controlador 5.Acceso directo a memoria (DMA)
7
7 2. Controladores de dispositivos Tema 13: Lectura y Escritura 1.Controladores y adaptadores 2.Concepto de canal 3.Controladores múltiples 4.Estructura lógica de un controlador 5.Acceso directo a memoria (DMA)
8
88 2.1 Controladores y adaptadores Tema 13: Lectura y Escritura Controlador: Interfaz electrónica del dispositivo Gobierna el funcionamiento del dispositivo Recibe órdenes del procesador En sistemas más simples: específico para ordenador y dispositivo procesador BUS controlador electromecánica
9
9 2.1 Controladores y adaptadores Tema 13: Lectura y Escritura Inconveniente: Dispositivo sólo compatible con sistema para el que está diseñado Alternativa: interfaz estándar, que normaliza: características mecánicas características eléctricas protocolos BUS adaptador electromecánica adaptadorcontrol ordenador interfaz dispositivo
10
10 2. Controladores de dispositivos Tema 13: Lectura y Escritura 1.Controladores y adaptadores 2.Concepto de canal 3.Controladores múltiples 4.Estructura lógica de un controlador 5.Acceso directo a memoria (DMA)
11
11 2.2 Concepto de canal Tema 13: Lectura y Escritura Canal de L/E: subsistema hardware especializado en gestión de lectura/escritura Adaptadores se conectan a canal Basados en procesador especializado Son capaces de procesar listas de órdenes de “alto nivel” Simplifican en gran medida SO pues: abstraen gran parte de la gestión de los dispositivos homogeinizan los dispositivos conectados BUS canal de L/E adaptador controlador … … …
12
12 2. Controladores de dispositivos Tema 13: Lectura y Escritura 1.Controladores y adaptadores 2.Concepto de canal 3.Controladores múltiples 4.Estructura lógica de un controlador 5.Acceso directo a memoria (DMA)
13
13 2.3 Controladores múltiples Tema 13: Lectura y Escritura Gobiernan varios dispositivos del mismo tipo Formas de conexión: Conexión directa (multiplexor) Conexión en cadena Conexión en bus Conexión directa (multiplexor) Circuitos independientes por dispositivo controlador Dispositivo 1 Dispositivo 2 Dispositivo n …
14
14 2.3 Controladores múltiples Tema 13: Lectura y Escritura Conexión directa (cont.) Ventajas: Posibilidad de simultanear transferencias Fallo en un dispositivo no afecta a los demás Inconvenientes: Complejidad del hardware (coste) Nº de dispositivos limitado por controlador
15
15 2.3 Controladores múltiples Tema 13: Lectura y Escritura Conexión en cadena Sólo un dispositivo se conecta a controlador Demás dispositivos se conectan entre sí en cadena Ventajas: Hardware se simplifica mucho (más barato) controlador Dispositivo 1 Dispositivo 2 Dispositivo n … Inconvenientes: Baja fiabilidad: si un dispositivo falla, incomunica a los que le siguen en la cadena Transferencia simultánea: imposible.
16
16 2.3 Controladores múltiples Tema 13: Lectura y Escritura Conexión en bus Todos los dispositivos comparten conexión a controlador Ventajas: Hardware se simplifica mucho (más barato) Fallo de un dispositivo no necesariamente afecta a otros controlador Dispositivo 1 Dispositivo 2 Dispositivo n … Inconvenientes: No se puede garantizar que fallo en un dispositivo no pueda afectar a otros (ejemplo: cortocircuito en bus) Transferencia simultánea: imposible.
17
17 2. Controladores de dispositivos Tema 13: Lectura y Escritura 1.Controladores y adaptadores 2.Concepto de canal 3.Controladores múltiples 4.Estructura lógica de un controlador 5.Acceso directo a memoria (DMA)
18
18 2.4 Estructura lógica de un controlador Tema 13: Lectura y Escritura Arquitectura en tres niveles: interfaz al bus (hardware) registros (software) interfaz al dispositivo (hardware) controlador BUS interfaz al bus registros interfaz a disp. Registros de órdenes de configuración (selección de modo) de comandos Registros de estado Registros de lectura/escritura
19
19 2.4 Estructura lógica de un controlador Tema 13: Lectura y Escritura Acceso a registros: Mapeados en memoria: Acceso mediante cualquier instrucción con operandos en memoria Protección: mediante mecanismos de protección de memoria Mapeados en espacio de lectura/escritura Algunos procesadores (ej. Intel) disponen de espacio de direcciones separado para lectura/escritura Acceso mediante instrucciones especiales: IN, OUT, etc.
20
20 2. Controladores de dispositivos Tema 13: Lectura y Escritura 1.Controladores y adaptadores 2.Concepto de canal 3.Controladores múltiples 4.Estructura lógica de un controlador 5.Acceso directo a memoria (DMA)
21
21 2.5 Acceso directo a memoria (DMA) Tema 13: Lectura y Escritura DMA: dispositivo capaz de transferir bloques de datos entre memoria y dispositivo Es programado por procesador con: dirección del registro del dispositivo dirección inicial del bloque nº de bytes/palabras a transferir cuando termina transferencia: interrupción BUS procesador DMADispositivoMemoria
22
22 2.5 Acceso directo a memoria (DMA) Tema 13: Lectura y Escritura Puede estar integrado en: Chipset del sistema: de propósito general, asignable a cualquier dispositivo En el controlador de un dispositivo: de uso dedicado a dicho dispositivo Controladores de DMA de propósito general: frecuentemente son multicanal (múltiples transferencias en curso) Algunos controladores de DMA soportan transferencias de memoria a memoria
23
23 Índice: 1.Dispositivos de L/E 2.Controladores de dispositivos 3.Modos de realizar las operaciones de L/E 4.Principios de diseño del software de L/E 5.Diseño modular del sistema de L/E 23 Tema 13: Lectura y Escritura
24
24 3. Modos de realizar las operaciones de L/E Tema 13: Lectura y Escritura Dos formas: Por programa Por interrupciones L/E guiada por programa La CPU programa las operaciones y monitoriza el estado del dispositivo mediante sondeo Ejemplo de lectura de un único dispositivo: configurar_dispositivo(); while(!fin_lectura()) { programar_lectura(); while (!dato_recibido()); leer_dato(); }
25
25 3. Modos de realizar las operaciones de L/E Tema 13: Lectura y Escritura L/E guiada por programa Si hay que gestionar varios dispositivos: while(!fin_transferencias()) { if (dispositivo_preparado(DISP1)) atender_dispositivo(DISP1); if (dispositivo_preparado(DISP2)) atender_dispositivo(DISP2); … if (dispositivo_preprado(DISPN)) atender_dispositivo(DISPN); } Prioridad Uniforme while(!fin_transferencias()) { if (dispositivo_preparado(DISP1)) atender_dispositivo(DISP1); else if (dispositivo_preparado(DISP2)) atender_dispositivo(DISP2); … else if (dispositivo_preprado(DISPN)) atender_dispositivo(DISPN); } Prioridad Escalonada
26
26 3. Modos de realizar las operaciones de L/E Tema 13: Lectura y Escritura L/E guiada por programa Prioridad uniforme vs prioridad escalonada. Comparación en base a: Tiempo de respuesta al dispositivo: tiempo que transcurre desde que el dispositivo requiere atención hasta que es tratado. Ancho de banda (BW): número de transmisiones por unidad de tiempo Suposición: n dispositivos, T= tiempo de transferencia para cualquiera de ellos Tiempo resp. BW Prior. Escal. Prior. Unif. ¡Solo para dispositivo 1! ¡Para todo dispositivo!
27
27 3. Modos de realizar las operaciones de L/E Tema 13: Lectura y Escritura L/E guiada por programa Si además de controlar dispositivos, hay que hacer otras cosas… void gestion_dispositivos() { if (dispositivo_preparado(DISP1)) atender_dispositivo(DISP1); if (dispositivo_preparado(DISP2)) atender_dispositivo(DISP2); … if (dispositivo_preprado(DISPN)) atender_dispositivo(DISPN); } Esta rutina ha de ejecutarse con frecuencia suficiente para que el más rápido de los dispositivos sea siempre atendido a tiempo ¿y eso cómo se hace?
28
28 3. Modos de realizar las operaciones de L/E Tema 13: Lectura y Escritura L/E guiada por programa Inconvenientes: Espera ocupada Complicado simultanear gestión de dispositivos con otras actividades Admisible en… Sistemas empotrados Procesadores dedicados Sistemas monoprogramados …
29
29 Dispositivos suelen disponer de alguna señal de interrupción Esta señal de interrupción se puede conectar a entrada de interrupción de CPU Dispositivos se puede configurar para que generen interrupción cuando requieran atención Tratamiento del dispositivo: en subrutina de servicio de interrupción Se ejecuta en modo supervisor de modo transparente para el resto de actividades de la CPU L/E guiada por interrupciones 3. Modos de realizar las operaciones de L/E Tema 13: Lectura y Escritura ¿Cuándo hay que atender a un dispositivo? Cuando haga falta ¿Y cómo sabemos cuándo le hace falta? Que él avise mediante una interrupción procesador
30
30 3. Modos de realizar las operaciones de L/E L/E guiada por interrupciones Ventajas: La gestión de los dispositivos se desacopla de las demás actividades del sistema Si hay que gestionar múltiples dispositivos: Una interrupción por dispositivo Una interrupción para todos los dispositivos Agrupar dispositivos: una interrupción por grupo procesador Dispositivo 1 Dispositivo 2 Dispositivo 3 Dispositivo 4
31
31 3. Modos de realizar las operaciones de L/E L/E guiada por interrupciones Controladores Programables de Interrupciones (PIC): Dispositivo al que se accede como a cualquier otro Dispone de M entradas de interrupción y N salidas Se puede programar un mapeo de las salidas sobre las entradas Control sobre las interrupciones a tres niveles: Nivel de dispositivo Nivel de PIC Nivel de CPU
32
32 3. Modos de realizar las operaciones de L/E ¿L/E guiada por programa o por interrupciones? Depende de: Carácter “asíncrono” del dispositivo Diferencia de velocidad entre CPU y dispositivo Dispositivos “asíncronos”: por interrupciones De lo contrario, habría que sondearlos continuamente Dispositivos “síncronos”: depende de diferencia de velocidad entre dispositivo y CPU: Si CPU mucho más rápida: interrupciones Si mismo orden de magnitud: es admisible por programa Tiempo tardado en servir una interrupción: apilar estado, determinar dirección SSI, salto a rutina, etc… se suma a latencia dispositivo Si dispositivo suficientemente rápido, espera ocupada puede ser más eficiente que interrupción
33
33 Índice: 1.Dispositivos de L/E 2.Controladores de dispositivos 3.Modos de realizar las operaciones de L/E 4.Principios de diseño del software de L/E 5.Diseño modular del sistema de L/E 33 Tema 13: Lectura y Escritura
34
34 4. Principios de diseño del software de L/E a)Diseño por estrados b)Garantizar independencia de los programas respecto a los dispositivos c)Presentar criterio uniforme de denominación de: Dispositivos Archivos d)Tratamiento de errores: lo más próximo posible a su origen e)Homogeneizar transferencias de bloque y de caracteres f)Igualar transmisiones para el usuario g)Considerar la naturaleza compartible o no de los dispositivos
35
35 Índice: 1.Dispositivos de L/E 2.Controladores de dispositivos 3.Modos de realizar las operaciones de L/E 4.Principios de diseño del software de L/E 5.Diseño modular del sistema de L/E 35 Tema 13: Lectura y Escritura
36
36 5. Diseño modular del sistema de L/E Cuatro niveles software y dos hardware: Dispositivo Controlador de Dispositivo Gestor de dispositivo Software de L/E independiente de dispositivo Software de L/E en espacio de usuario SSI Software Hardware
37
37 5. Diseño modular del sistema de L/E Ejemplo: lectura de un archivo en MINIX Tarea Floppy Núcleo Tarea HD … Tarea del Sistema Administrador de ArchivosAdministrador de Memoria Administrador de Red Proceso de usuario SSI Floppy ch= fgetc(f); READ fd, pos, tam DISK_READ fd0, bloque Controlador FLOPPY TASK_REPLY abcedefghi….
38
38
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.