1 / 27

Horas INTRODUCCIÓN 5 PROCESOS Y THREADS 8 GESTIÓN DE MEMORIA 8 ENTRADA/SALIDA 4 GESTIÓN DE FICHEROS 4

S.O.I Temario Curso: 04/05. Horas INTRODUCCIÓN 5 PROCESOS Y THREADS 8 GESTIÓN DE MEMORIA 8 ENTRADA/SALIDA 4 GESTIÓN DE FICHEROS 4. Tema 4. Entrada / Salida. PRINCIPIOS HARDWARE Dispositivos y Controladores E/S mapeada DMA PRINCIPIOS SOFTWARE (Objetivos) NIVELES SOFTWARE

josh
Download Presentation

Horas INTRODUCCIÓN 5 PROCESOS Y THREADS 8 GESTIÓN DE MEMORIA 8 ENTRADA/SALIDA 4 GESTIÓN DE FICHEROS 4

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. S.O.I Temario Curso: 04/05 • Horas • INTRODUCCIÓN 5 • PROCESOS Y THREADS 8 • GESTIÓN DE MEMORIA 8 • ENTRADA/SALIDA 4 • GESTIÓN DE FICHEROS 4

  2. Tema 4. Entrada / Salida • PRINCIPIOS HARDWARE • Dispositivos y Controladores • E/S mapeada • DMA • PRINCIPIOS SOFTWARE (Objetivos) • NIVELES SOFTWARE • Manejadores de interrupción • Drivers de dispositivos • Independencia del dispositivo • Sw de E/S en el espacio de usuario • DISCOS • Hardware (discos magnéticos) • Formateo • Planificación del brazo

  3. D7-D0 INT D7-D0 D7-D0 D7-D0 INT PBUS ABUS PMEM PES LEC ESC HRQ HLDA EOP DREQ DACK MR MW TC DREQ DACK MP 64K Z80 8237 DMA A15-A0 8272 FDC A15-A0 A0 LEC ESC A15-A0 IOR IOW CS R W CS CS IOR IOW MR MW Principios Hardware (Dispositivos + Controladores ) S.O => Simplicidad Eficiencia ?

  4. Orientados a bloques: Bloques [512B..32KB] y acceso aleatorio • Orientados a caracteres: Flujo de bytes y acceso secuencial • Tasas de transferencia muy variable: 10B/seg..20GB/seg Dispositivo Tasa Trans. 10 B/s Teclado Ratón 100 B/s Modem 56K 7 KB/s Imp. Láser 100 KB/s Scanner 400 KB/s USB 1,5 MB/s 40x CD-ROM 6 MB/s FastEthernet 12,5 MB/s FireWire 50 MB/s SCSI Ultra 2 80 MB/s Bus PCI 528 MB/s Sun Gigaplane 20 GB/s Principios Hardware (Dispositivos)

  5. Sector Preámbulo Datos ECC CPU MP Controlador Disco/s Controlador Impresora Estándar • Bloque de bytes • Buffer amortiguador de velocidad • Comprobar errores • Dejar en la memoria Principios Hardware (Controladores) 0 1 0 0 0 1 1 1 0 1 . . . . ?

  6. Bloqueo Interrupciones Principios Sotware (Objetivos) • Independencia del dispositivo: sort < entrada > salida • Uniformidad de nombres: /dev/lp • /dev/usr/alumnos/zz9999 • /dev/usr/profesores/pcarazo ¿mount? • Gestión de errores: Cuanto más local mejor • Tipo de transferencia: Síncrona vs asíncrona • Almacenaje intermedio: Amortiguar velocidades, ... • Compartido vs exclusivo: Ficheros en disco vs • listados por impresora

  7. read (df, ….) => Petición de la E/S Respuesta de la E/S Sw de E/S a nivel de usuario Formateo, TRAP Sw independiente del dispositivo Nombrado, protección, bloqueo, almacenamiento Drivers de dispositivos Manejar controlador (reg), comprobar estado, errores Gestores de Interrupciones Salvar y recuperar estado, realizar tratamiento HARDWARE Realización física de la E/S Niveles Software

  8. read (df, ….) Comandos* Sw de E/S a nivel de usuario Driver Sw independiente del dispositivo --------------- out reg,valor Drivers de dispositivos signal Rutina tratamiento interrupción Gestores de Interrupciones HARDWARE Niveles Software (Gestores de interrupciones) ? ? wait (sDisco) más acciones Tratar la interrupción Salvar registros Ejecutar rutina específica Contexto rutina int Planificar proceso Pila rutina int Recuperar estado proceso Ack al controlador int rte Registros salvados a descriptor

  9. read (df, ….) Sw de E/S a nivel de usuario LeerBloque (12.300, &buffer) Sw independiente del dispositivo LeerBloque (5,&b) ? Drivers de dispositivos DDisco DTeclado cilindro pista, sector Gestores de Interrupciones HARDWARE DDisco • ¿Llega una petición? Atender petición ON OFF ¿Mucho tiempo? Niveles Software (Drivers de dispositivos) ¿Extraigo dispositivo? ? DImpLaser ? ¿Motor encendido? ? • ¿Posición actual?

  10. read (df, ….) Sw de E/S a nivel de usuario Sw independiente del dispositivo ? Drivers de dispositivos Gestores de Interrupciones HARDWARE Sistema Operativo i-node tipo # principal # secundario Niveles Software (Sw independiente del dispositivo) • Interfaz uniforme para los drivers • Almacenamiento (buffers) • Gestión de errores • Pedir | Liberar dispositivos dedicados • Tamaño de bloque independiente • del dispositivo df = open (“/dev/fd0”, …) ? Nombrado de dispositivos de E/S

  11. Pi Pi Pi Pi Usuario Kernel Sw independiente: Almacenamiento (buffers)

  12. Sw independiente: Almacenamiento (buffers)

  13. Sw independiente (Gestión errores y dispositivos dedicados) • Errores: • Parámetros => Operación inocua e informar del error • Físicos => Resolución local o pasar la pelota o crash • Dispositivos dedicados: • Open => Como entrar en región crítica • Close => Como salir de región crítica

  14. Por encima del Sw independiente, cada dispositivo de bloques: Datos: Bloque 0 Bloque 1 Bloque 2 Bloque N Operaciones: leerBloque (dispositivo, indBloque, dirBuffer) escribirBloque 0..N Sw independiente dispositivo Drivers ramDisk Sw independiente (Tamaño de bloque independiente)

  15. Niveles Software (Sw E/S en el espacio de usuario) Llamadas al sistema  rutinas de biblioteca count = write (fd, buffer, nbytes) Rutinas tipo printf (formateo y pasar parámetros) Sistema de spooling impresora: demonio y directorio de spooling red: demonio y directorio de spooling

  16. DISCOS (Hardware de los discos magnéticos - I)

  17. DISCOS (Hardware de los discos magnéticos - II) • Posibilidad de posicionamiento simultáneo en varias unidades • (búsquedas solapadas). • Posibilidad de posicionamiento y r/w simultáneos en dos unidades. • NO transferencias simultáneas.

  18. Geometría física de un disco con dos zonas • Geometría virtual para el disco DISCOS (Hardware de los discos magnéticos - III)

  19. Preámbulo Datos ECC Patrón de bits Cilindro, Sector Parametrizable Habitual 512B Error Correcting Code Habitual 16 bits ¿ Capacidad efectiva ? Sectores extra alternativos DISCOS (Formateo a bajo nivel: Sector de disco) ¿ Sectores defectuosos de fábrica ? ¿ Cómo ubicar los sectores en la superficie del disco ?

  20. Leer 5 sectores Amortigua posicionamiento ¿Viable? DISCOS (Formateo a bajo nivel: cylinder skew)

  21. Interleaving = 0 Interleaving = 1 Interleaving = 2 DISCOS (Formateo a bajo nivel: Entrelazado de sectores) • Mientras se transfiere a memoria, el disco sigue girando y …. ¡ Controlador con un único buffer (sector) ! ¡ Habitual buffer en controlador para toda una pista !

  22. Master boot record Tabla particiones # 1er sector tamaño C 1 1000 D 1001 8000 E ----- ----- F ----- ----- DISCOS (Establecer particiones) ¿Formateo a alto nivel? Código de arranque ¿Partición activa?

  23. ¡ Colas de peticiones pendientes por cilindro ! X X X 0 1 9 11 12 16 34 36 35 20 18 25 3 DISCOS (Planificación del brazo: FCFS) • Ejemplo: Posición actual: cilindro 11 • Llegan peticiones: 1, 36, 16, 34, 9 ,12 X X X 10 ¡ En total se atraviesan 111 cilindros ! ¡ En total se atraviesan 111 cilindros !

  24. INJUSTICIA + INANICIÓN DISCOS (Planificación del brazo: SSF “Shortest Seek First”) ¡ En total se atraviesan 61 cilindros !

  25. DISCOS (Planificación del brazo: Ascensor ) • Idea de sentido: (Sube – Baja) *

  26. DISCOS (Planificación del brazo: Ascensor mejorado CSCAN)

  27. DISCOS (Planificación del brazo: Otras optimizaciones ) • OTRAS OPTIMIZACIONES: • Peticiones sobre el mismo cilindro  sector más cercano • Caché en el controlador • Si N unidades de disco: • Ordenar posicionamiento en N-1 • Realizar transferencia actual • Factor de entrelazado (interleaving) • (Leer la sección 5.4.4. La sección 5.4.5 no entra para el examen.)

More Related