1 / 28

Horas INTRODUCCIÓN 4 PROCESOS Y THREADS 12 GESTIÓN DE MEMORIA 9 ENTRADA/SALIDA 2

sisOpe Temario Curso: 13/14. Horas INTRODUCCIÓN 4 PROCESOS Y THREADS 12 GESTIÓN DE MEMORIA 9 ENTRADA/SALIDA 2 SISTEMA DE FICHEROS 5. Tema 4. Entrada / Salida. PRINCIPIOS HARDWARE Dispositivos y Controladores E/S mapeada DMA PRINCIPIOS SOFTWARE (Objetivos) NIVELES SOFTWARE

roza
Download Presentation

Horas INTRODUCCIÓN 4 PROCESOS Y THREADS 12 GESTIÓN DE MEMORIA 9 ENTRADA/SALIDA 2

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. sisOpe Temario Curso: 13/14 • Horas • INTRODUCCIÓN 4 • PROCESOS Y THREADS 12 • GESTIÓN DE MEMORIA 9 • ENTRADA/SALIDA 2 • SISTEMA DE FICHEROS 5

  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..528MB/seg Dispositivo Tasa Trans. 10 B/s Teclado Ratón 100 B/s Modem 56K 7 KB/s Scanner 400 KB/s 802.11g 6,75 MB/s 52x CD-ROM 7,8 MB/s USB 2.0 60 MB/s Giga Ethernet 125 MB/s Disco SATA 300 MB/s Cinta Ultrium 320 MB/s Bus PCI 528 MB/s Principios Hardware (Dispositivos) PCI-e 3.0  1GB/s

  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 ¿ SSD ?) 500GB 45€ 2TB 69€ 4TB 155€ • Precio • Capacidad • Disponibilidad • Velocidad • Ruido • Consumo 120GB 86€ 250GB 149€ 500GB 285€ 1TB 499€ SSHD 4TB 200€ [8GB Flash]

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

  18. 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. 1983 2000 2010 WD Blue HD Parámetro IBM PC Floppy WD 18300 HD Número cilindros 40 10.601 Pistas x cilindro 2 12 Sectores x pista 9 281 (media) 1.953.525.169 Sectores x disco 720 35.742.000 512 Bytes x sector 512 512 1 TB Capacidad disco 360 KB 18,3 GB Cil => CilAdya 6 mseg 0,8 mseg Posiciona medio 77 mseg 6,9 mseg 8,33 mseg T. rotación 200 mseg 8,33 mseg T. on/off motor 250 mseg 20 seg T. Transferir sector 22 mseg 17 µseg 28,7MB x seg 150MB x seg

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

  20. 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 ?

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

  22. 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 !

  23. 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?

  24. ¡ 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 !

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

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

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

  28. 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 (Leer la sección 5.4.4. La sección 5.4.5 no entra para el examen.)

More Related