1 Tema 14: Gestión de la Lectura/Escritura Sistemas Operativos (Tema 11 en apuntes prof. Rovayo)

1 1 Tema 14: Gestión de la Lectura/Escritura Sistemas Ope...
Author: Natividad Mendoza Barbero
0 downloads 0 Views

1 1 Tema 14: Gestión de la Lectura/Escritura Sistemas Operativos (Tema 11 en apuntes prof. Rovayo)

2 22 Tema 14: Gestión de la Lectura/Escritura Índice: 1.Discos Magnéticos 2.Relojes y Alarmas 3.Otros Dispositivos

3 3 Índice: 1.Discos Magnéticos 2.Relojes y Alarmas 3.Otros Dispositivos 3 Tema 14: Gestión de la Lectura/Escritura

4 44 1. Discos Magnéticos Tema 14: Gestión de la Lectura/Escritura 1.Hardware de los discos 2.Prestaciones 3.Mejora del tiempo de arranque 4.Mejoras del tiempo de búsqueda 5.Mejoras de la demora de rotación 6.Tratamiento de errores

5 55 1. Discos Magnéticos Tema 14: Gestión de la Lectura/Escritura 1.Hardware de los discos 2.Prestaciones 3.Mejora del tiempo de arranque 4.Mejoras del tiempo de búsqueda 5.Mejoras de la demora de rotación 6.Tratamiento de errores

6 66 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura  Constan de una o más placas circulares que giran alrededor de eje  Cada placa puede tener una o dos caras magnetizables  Por cada cara, un cabezal de lectura  Todos los cabezales se mueven de forma solidaria (peine)  Pueden moverse de forma radial o tangencial

7 77 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura

8 88 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura

9 99 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura

10 10 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura

11 11 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura

12 12 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura

13 13 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura

14 14 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura ¡Vídeo de ejemplo!

15 15 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura Organización de la información  Pistas: coronas concéntricas, divididas en sectores  Sector: unidad mínima de transferencia  Discos pequeños o antiguos: todas las pistas tienen igual número de sectores: mayor densidad magnética en pistas centrales  Discos ZBR: pistas exteriores tienen mas sectores: más capacidad más velocidad de transmisión 16 Sectores por pista 12 Sectores por pista 14 Sectores por pista 11 Sectores por pista 9 Sectores por pista Imágenes tomadas de www.pcguide.com

16 16 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura Organización de la información  Sector: (continuación)  Estructura de un sector: Sincronización Información de identificación Datos Código de corrección de errores Espaciadores Información para el control del servomotor  Cilindro: conjunto de pistas accesibles desde una posición de las cabezas lectoras  Numerados consecutivamente  Cilindro 0: el más externo

17 17 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura Transferencia de la información  Cabezas lectoras deben estar posicionadas y estabilizadas  Sectores se transfieren a velocidad constante de bits  Velocidad de giro constante  Modos de direccionamiento:  LBA (Linear Block Address)  CHS (Cylinder Head Sector) Particularidades: discos flexibles  Dispositivo extraíble: cabezas lectoras en la unidad  Cabezas lectoras rozan físicamente superficie de disco  Consecuencias:  Menor densidad de grabación  Motor sólo gira durante las transferencias

18 18 1.1 Hardware de los discos Tema 14: Gestión de la Lectura/Escritura Particularidades: discos duros  Muy alta densidad de grabación  Para mayor eficiencia, motor gira permanentemente  Velocidades típicas: 3.600, 7.200, 9.600, 12.000, 15.000 rpm  Consecuencias:  Cabezas lectoras no pueden tocar superficie de disco  Mínima distancia posible de superficie (típicamente 0.5μm)  Discos envasados al vacío o en atmósfera controlada cabello: 20μm 0,5μm huella digital: 8μm partícula humo: 2,5μm

19 19 1. Discos Magnéticos Tema 14: Gestión de la Lectura/Escritura 1.Hardware de los discos 2.Prestaciones 3.Mejora del tiempo de arranque 4.Mejoras del tiempo de búsqueda 5.Mejoras de la demora de rotación 6.Tratamiento de errores

20 20 1.2 Prestaciones Tema 14: Gestión de la Lectura/Escritura Realización de una transferencia Ta=[Tm]+ Tb Tb= nTc + Th + Tr+ Tx

21 21 1. Discos Magnéticos Tema 14: Gestión de la Lectura/Escritura 1.Hardware de los discos 2.Prestaciones 3.Mejora del tiempo de arranque 4.Mejoras del tiempo de búsqueda 5.Mejoras de la demora de rotación 6.Tratamiento de errores

22 22 1.3 Mejora del tiempo de arranque Tema 14: Gestión de la Lectura/Escritura  Ante un acceso con motor parado: hay que arrancarlo  Idea: tras acceso, dejar motor encendido un tiempo  ¡Siguientes accesos no tendrán que esperar Tm!

23 23 1. Discos Magnéticos Tema 14: Gestión de la Lectura/Escritura 1.Hardware de los discos 2.Prestaciones 3.Mejora del tiempo de arranque 4.Mejoras del tiempo de búsqueda 5.Mejoras de la demora de rotación 6.Tratamiento de errores

24 24 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura  Ante un único acceso: no se puede hacer nada   Si gestor de disco tiene lista de búsquedas pendientes:  ¡Ordenándolas de forma inteligente se puede conseguir un mejor tiempo total!  Criterios de planificación de cabezas lectoras:  Por orden de llegada (FCFS)  Por menor tiempo de búsqueda (SSTF)  Criterio del ascensor (SCAN)  Variantes de SCAN: C-SCAN F-SCAN N-SCAN

25 25 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio FCFS  Las peticiones se atienden en el mismo orden en que se reciben  Ejemplo:  Cabezal inicialmente en cilindro 11  Búsquedas: 1, 36, 16, 34, 9, 12 05101520253035 10 35 20 18 25 3 Número total de cilindros saltados: 10 + 35 + 20 + 18 + 25 + 3 = 111

26 26 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio SSTF  Se atiende la petición mas próxima al cilindro en que se encuentran actualmente las cabezas lectoras  Ejemplo:  Cabezal inicialmente en cilindro 11  Búsquedas: 1, 36, 16, 34, 9, 12 05101520253035 1 3 7 15 33 2 Número total de cilindros saltados: 1 + 3 + 7 + 15 + 33 + 2 =61

27 27 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio SSTF  Ventajas:  Productividad mejor que FCFS: buen tiempo medio  Inconvenientes:  Varianza muy elevada:  Puede producir aplazamiento indefinido de peticiones alejadas de posición actual de los cabezales  No válido para sistemas interactivos

28 28 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio SCAN  Se establece sentido de movimiento de las cabezas:  Se atienden todas las peticiones en el orden en que se van encontrando, hasta llegar a la última  Se invierte el sentido de movimiento  Se repite proceso  Ejemplo:  Cabezal inicialmente en cilindro 11, sentido inicial ascendente  Búsquedas: 1, 36, 16, 34, 9, 12 05101520253035 1 4 18 2 27 8 Número total de cilindros saltados: 1 + 4 + 18 + 2 + 27 + 8 = 60

29 29 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio SCAN  Ventajas:  Productividad similar a SSTF  Inconvenientes: Mejor trato a los archivos que residen en cilindros centrales del disco:  Cabezas lectoras pasan más frecuentemente sobre estos cilindros (reciben más oportunidades)  Peticiones a los extremos se pueden ver aplazadas por peticiones a cilindros intermedios que hayan llegado después 05101520253035

30 30 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio C-SCAN  Se establece sentido de movimiento de las cabezas:  Se atienden todas las peticiones en el orden en que se van encontrando, hasta llegar a la última  Se salta a petición mas lejana en extremo opuesto de disco  Se repite proceso  Ejemplo:  Cabezal inicialmente en cilindro 11, sentido ascendente  Búsquedas: 1, 36, 16, 34, 9, 12 05101520253035 1 4 18 2 35 8 Número total de cilindros saltados: 1 + 4 + 18 + 2 + 35 + 8 = 68

31 31 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio C-SCAN  Ventajas:  Iguala el número de oportunidades de ser atendidas de peticiones en cilindros centrales y extremos  Inconvenientes:  Peticiones a extremos aún siguen siendo aplazadas por peticiones centrales que lleguen después 05101520253035

32 32 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio F-SCAN  Planificación SCAN, pero sólo se atienden las peticiones que hayan llegado antes de empezar semiciclo:  Dos listas: Peticiones del ciclo en curso Peticiones llegadas una vez empezado ciclo en curso  Al terminar ciclo en curso, segunda lista se vuelca sobre primera, y comienza nuevo ciclo SCAN  Evita aplazamiento de peticiones en extremos por parte de peticiones centrales que lleguen después

33 33 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio N-SCAN  Se aplica planificación SCAN a grupos de N peticiones como máximo  Ejemplo:  Cabezal inicialmente en cilindro 11, N=3, sentido inicial ascendente  Búsquedas: 34, 9, 12, 1, 36, 16, 05101520253035 1 22 7 25 20 35

34 34 1.4 Mejora del tiempo de búsqueda Tema 14: Gestión de la Lectura/Escritura Criterio N-SCAN  Ventajas:  No produce aplazamientos indefinidos  Se atenúa la preferencia por las zonas centrales del disco → Varianza mejora sensiblemente  Inconvenientes:  Tiempos medios no tan buenos (dependientes de N)

35 35 1. Discos Magnéticos Tema 14: Gestión de la Lectura/Escritura 1.Hardware de los discos 2.Prestaciones 3.Mejora del tiempo de arranque 4.Mejoras del tiempo de búsqueda 5.Mejoras de la demora de rotación 6.Tratamiento de errores

36 36 1.5 Mejora del tiempo de rotación Tema 14: Gestión de la Lectura/Escritura  Misma idea que mejora tiempo de búsqueda: reducir tiempo medio de búsqueda  Estrategias:  Intercalado de sectores  Ordenación circular  Transferencia de pista completa

37 37 1.5 Mejora del tiempo de rotación Tema 14: Gestión de la Lectura/Escritura Intercalado de sectores  El problema: si se procesan dos sectores consecutivos, es probable que el segundo sector “se escape” Quiero el sector X, porfaplease… Estupendo, pues ahora quiero el X+1…

38 38 1.5 Mejora del tiempo de rotación Tema 14: Gestión de la Lectura/Escritura Intercalado de sectores  La solución: que sectores lógicos consecutivos no estén físicamente adyacentes: 0 1 2 3 4 5 6 7 Numeración natural 0 4 1 5 2 6 3 7 Intercalado = 1 0 3 6 1 4 7 2 5 Intercalado = 2  Intercalado se puede llevar a cabo:  Durante el formateo  Por software, en el propio gestor NFS 0 2 4 6 … NLS 0 1 2 3 …

39 39 1.5 Mejora del tiempo de rotación Tema 14: Gestión de la Lectura/Escritura Ordenación circular  Si hay varias peticiones pendientes para el mismo cilindro:  Se pueden ordenar en sentido de la rotación  La primera será la que tenga una menor demora  Ejemplo:  Peticiones pendientes: 0, 7, 3, 6, 1  Brazo sobre sector 2 0 1 2 3 4 5 6 7 Orden: 3, 6, 7, 0, 1

40 40 1.5 Mejora del tiempo de rotación Tema 14: Gestión de la Lectura/Escritura Transferencia de pista completa  Tan pronto cabezas lectoras se sitúan sobre cilindro: comienzan a transferir  Pista completa se transfiere en periodo de rotación + tiempo de transferencia de un sector  Ventaja: anticipación  Por localidad espacial, es muy probable que tras sector n se pida sector n+1: dicha operación se sirve inmediatamente  Almacenamiento de pistas:  Controlador de unidad de disco  En la interfaz de disco  En el gestor de dispositivo

41 41 1. Discos Magnéticos Tema 14: Gestión de la Lectura/Escritura 1.Hardware de los discos 2.Prestaciones 3.Mejora del tiempo de arranque 4.Mejoras del tiempo de búsqueda 5.Mejoras de la demora de rotación 6.Tratamiento de errores

42 42 1.6 Tratamiento de errores Tema 14: Gestión de la Lectura/Escritura  Tipos de errores:  De programación  Transitorios de datos  Permanentes de datos  De localización  De controlador Errores de programación  Descripción: el gestor recibe una petición sin sentido de nivel superior  Solución: informar que la operación solicitada no es válida

43 43 1.6 Tratamiento de errores Tema 14: Gestión de la Lectura/Escritura Errores transitorios de datos  Descripción: al leer un sector y comprobar su CRC, se comprueba que los datos leídos no son correctos  Posibles causas:  Mecánicas: vibración del equipo durante la operación Discos flexibles: suciedad entre disco y cabezas lectoras  Electrónicas: Interferencias con otros dispositivos (móviles, etc.) Fluctuación de la alimentación  Error permanente de datos  …  Solución: intentar de nuevo  Si tras un número de reintentos no hay éxito: informar a nivel superior

44 44 1.6 Tratamiento de errores Tema 14: Gestión de la Lectura/Escritura Errores permanentes de datos  Descripción: El disco tiene sectores físicamente dañados y no utilizables por consiguiente  Habitual en discos duros  Posibles causas:  Defecto de fabricación  Aterrizaje de cabezales (en discos duros)  Desgaste o mal uso (discos flexibles)  …  Solución: hay que evitar que dicho sector se utilice  ¡ESTE PROBLEMA NO LE CORREPONDE AL GESTOR DE DISCO!  Asignación de bloques es responsabilidad de administrador de archivos

45 45 1.6 Tratamiento de errores Tema 14: Gestión de la Lectura/Escritura Errores permanentes de datos Soluciones: (por administrador de archivos)  Formar un archivo especial compuesto por todos los bloques defectuosos  El administrador de archivos ocultará dicho archivo  Crear un archivo del sistema con los números de los bloques defectuosos  En el arranque, el administrador de archivo lee del archivo los números de los bloques defectuosos  Evita asignarlos en los sucesivo

46 46 1.6 Tratamiento de errores Tema 14: Gestión de la Lectura/Escritura Errores permanentes de datos Soluciones: (por administrador de archivos)  Sistemas FAT: marcar sectores como defectuosos en la FAT  Crear pista/cilindro de sectores de reserva, y sustituir los accesos a sectores defectuosos por sectores de reserva. Se puede implementar:  Por software  Por hardware (por parte del propio disco) ¡Puede dar al traste con el criterio de planificación de las cabezas lectoras! 

47 47 1.6 Tratamiento de errores Tema 14: Gestión de la Lectura/Escritura Errores de localización  Descripción:  Tras mover cabeza lectora a un cilindro, se comprueba que no está donde se esperaba (error de localización de cilindro)  Tras sector i-1, se encuentra sector i+1 (error de localización de sector i)  Solución errores de localización de cilindro:  Recalibrar cabezas lectoras  Reintentar  Solución errores de localización de sector:  Reintentar

48 48 1.6 Tratamiento de errores Tema 14: Gestión de la Lectura/Escritura Errores de controlador  Descripción: el disco no responde  Controlador está basado en un microprocesador  Todo microprocesador se puede colgar  Solución: la línea de reset del microprocesador de controlador está mapeada en un bit de registro de comandos: reiniciar  Si tras reiniciar sigue sin responder: pánico

49 49 Índice: 1.Discos Magnéticos 2.Relojes y Alarmas 3.Otros Dispositivos 49 Tema 14: Gestión de la Lectura/Escritura

50 50 2. Relojes y alarmas Tema 14: Gestión de la Lectura/Escritura 1.Hardware 2.Actividades relacionadas con el reloj

51 51 2. Relojes y alarmas Tema 14: Gestión de la Lectura/Escritura 1.Hardware 2.Actividades relacionadas con el reloj

52 52 2.1 Hardware Tema 14: Gestión de la Lectura/Escritura  Dispositivo temporizador más simple: Temporizador de Intervalo Programable (PIT)  Consta de:  Un registro de valor inicial  Un contador autodecrementable con un comparador  Un oscilador  Circuitería de control  … … Valor inicial Contador ¿=0? T

53 53 2. Relojes y alarmas Tema 14: Gestión de la Lectura/Escritura 1.Hardware 2.Actividades relacionadas con el reloj

54 54 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura  Suposición: hardware sólo genera interrupciones (ticks)  Todo se hace por software  Actividades:  Fecha y hora  Cuanto de tiempo y límite de ejecución  Contabilidad tiempo de ejecución  Temporización y alarmas  Perfiles de tiempo de ejecución

55 55 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Fecha y hora  Contador en memoria y cada tick lo incrementa  Posibles formatos de representación:  Nº de ticks desde fecha y hora mágica  Nº de segundos desde fecha y hora mágica + Nº de ticks desde el último segundo  Fecha como nº de días desde fecha mágica + hora en ticks  Fecha de arranque como nº de segundos desde fecha mágica + nº de segundos desde arranque  …

56 56 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Cuanto de tiempo y límite de ejecución  Programar un tick de la duración necesaria  Si duración mayor que mayor tick programable:  Multiplicar tick por software  Cuanto de tiempo: provocar conmutación  Límite de ejecución: terminar proceso t=T/4 …

57 57 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Contabilidad del tiempo de ejecución  Programar interrupción periódica  Un contador por cada proceso  En cada interrupción: se incrementa contador a proceso activo  Si es costoso acceder a PCB: contador global que se vuelca en PCB cuando se conmuta  Resultados: sólo una aproximación P1 P2 P3 P1 P3P1P3P1 P3 P1 P3 Pt P19 P20 P36

58 58 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Contabilidad del tiempo de ejecución  Hacer tick más pequeño: mayor sobrecarga  Además, ha de tenerse en cuenta:  Tiempo de atención a interrupciones: le contarán a proceso activo  Tiempo del sistema: ¿y si tick sorprende funcionando a SO?

59 59 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Temporizadores y alarmas  Temporizador: artefacto software que hace algo dentro de t unidades de tiempo  Alarma: artefacto software que hace algo a las h horas del día d  Se pueden implementar los unos en base a los otros  Precaución: ¡alarmas dependen de la hora del sistema!  Actividades cuando expira temporizador o alarma:  Enviar una señal  Enviar un mensaje  Abrir un semáforo  Ejecutar un proceso  Activar un indicador  …

60 60 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Temporizadores y alarmas  Implementación 1: tabla de alarmas/temporizadores  Un contador por cada proceso (nº de ticks hasta expiración)  Se decrementan contadores con cada tick  Al llegar a 0: expiración t/at T1 T2 T3 …… 3 2 5 2 1 4 1 0 3 0 0 2 0 0 1 0 0 0  Inconvenientes:  Por cada tick hay que recorrer tabla completa

61 61 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Temporizadores y alarmas  Implementación 2: lista de horas de expiración  Expresar temporizadores/alarmas como hora absoluta  Crear lista ordenada por hora de expiración  Por cada tick: comparar con hora actual la(s) primera(s)  Ventajas:  No hay que explorar la lista completa lista 12:00:0112:00:0513:15:12 …

62 62 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Temporizadores y alarmas  Implementación 3: lista diferencial  Lista ordenada cronológicamente de manera incremental  Primer nodo: ticks restantes hasta próxima expiración  Nodo i: ticks desde la anterior expiración  Ventajas:  No hay que explorar la lista completa  Más simple que mecanismo anterior lista 12:00:0112:00:0513:15:12 … 3409070210

63 63 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Temporizadores y alarmas  Implementación 4: Método MINIX  Alarmas/temporizadores se expresan en ticks respecto hora de arranque en PCB  SO almacena en una variable la hora (en ticks) de próxima expiración  Cuando llega dicha hora, revisa PCB’s para encontrar cuáles han expirado Procalarm T112325 T218620 T312325 …… Proxima Alarma: 12325 Fecha y hora: 1232112322123231232412325

64 64 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Perfiles de tiempo de ejecución  Perfilado= cálculo del tiempo que un programa invierte en cada región de código  Implementaciónes:  Muestreo  Cálculo preciso  Perfilado por muestreo  Determinar en cada tick en qué región se encuentra el proceso Para ello, se comprueba el valor del contador de programa Se cuenta nº de veces que se detecta contador en cada zona Es necesario conocer la distribución de las zonas en memoria

65 65 2.2 Actividades relacionadas con el reloj Tema 14: Gestión de la Lectura/Escritura Perfiles de tiempo de ejecución  Perfilado preciso  Se insertan instrucciones a la entrada y salida de cada región Manualmente Mediante el compilador  Entrada: se obtiene instante de entrada  Salida: se obtiene instante de salida, y se calcula la diferencia  Dificultad: necesaria mucha precisión en fecha y hora void rutina (int parametro) { … } clock_t time_in = times(&buffer); clock_t time= times(&buffer) – time_in; total[ID_RUTINA]+= time;

66 66 Índice: 1.Discos Magnéticos 2.Relojes y Alarmas 3.Otros Dispositivos 66 Tema 14: Gestión de la Lectura/Escritura

67 67 3. Otros dispositivos Tema 14: Gestión de la Lectura/Escritura 1.Terminales 2.Discos Ópticos

68 68 3. Otros dispositivos Tema 14: Gestión de la Lectura/Escritura 1.Terminales 2.Discos Ópticos

69 69 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura  Dos tipos totalmente distintos de terminal:  Terminales externos  Terminales con memoria compartida Terminales externos:  Sistema autónomo conectado a través de algún tipo de sistema de comunicaciones BUS procesador Interfaz comunicaciones Memoria

70 70 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Terminales con memoria compartida  Se trata de tres dispositivos independientes:  Pantalla  Teclado  Ratón  Fuertemente relacionados entre ellos BUS procesador Adaptador Teclado Memoria Adaptador ratón Adaptador Pantalla

71 71 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Pantalla  El adaptador barre un área de memoria que representa el contenido de la pantalla (memoria de video)  Memoria de video puede estar en  Adaptador  Memoria principal  Interpretación memoria: depende de modo de video  Texto  Gráfico BUS procesador Memoria Adaptador Pantalla m. video

72 72 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Teclado  Dispone de un microcontrolador que explora el array de teclas n veces por segundo  Al pulsar una tecla:  Genera una interrupción de tecla pulsada  En registro de datos se puede leer scancode de tecla  Al soltar una tecla:  Genera una interrupción de tecla liberada  En registro de datos se puede leer scancode de tecla  Aplicación: detectar combinaciones de teclas  Conversión scancode ↔ carácter: en gestor de teclado e04d

73 73 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Ratón  Dispone de un microcontrolador que provoca una interrupción cada vez que cambia de estado  Pulsación de una tecla  Liberación de tecla  Desplazamiento  Por cada cambio de estado, microcontrolador proporciona:  Vector de desplazamiento  Estado de teclas  Gestor de ratón:  Mueve un cursor por la pantalla  Los adaptadores de video suelen disponer de cursores hardware de ratón  Procesa los clicks

74 74 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Ratón  Tecnologías:  Mecánico  Óptico  Láser Imagen tomada de wikipedia.org

75 75 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Software de lectura del terminal  Lectura de caracteres:  Atender interrupciones de teclado (terminales con memoria compartida) Sistema de comunicaciones (terminales externos)  Gestión de combinaciones de teclas  Mapas de caracteres  Composición de caracteres especiales (acentos, etc.)  Repetición de caracteres Terminales con memoria compartida

76 76 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Software de lectura del terminal  Caracteres de control  Algunos caracteres pueden tener significado especial: Backspace, Ctrl-C, teclas de movimiento de cursor…  Modos de funcionamiento: Elaborado Semielaborado No elaborado

77 77 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Software de lectura del terminal  Buffer de lectura anticipada  Útil para: Escribir por adelantado En modo elaborado: corregir errores antes de que lleguen a proceso  Implementación 1: un buffer por terminal Ventaja: implementación sencilla Inconveniente: gasto de memoria si hay muchos terminales  Implementación 2: asignación dinámica de bloques pequeños El espacio se va asignando conforme va siendo necesario

78 78 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Software de lectura del terminal  Eco de las pulsaciones  No es complicado, excepto tratamiento casos especiales: Borrado Tabulación Ultima columna de una línea Carácter de fin de línea etc.

79 79 3.1 Terminales Tema 14: Gestión de la Lectura/Escritura Software de escritura del terminal  Terminales externos:  Gestión de buffers  Gestión de transmisión (carácter a carácter)  Mayor parte de trabajo en el propio terminal  Algunos terminales admiten comandos de control (ej: comandos ANSI)  Pantalla (terminal con memoria compartida)  Los caracteres/gráficos se copian de memoria de usuario a memoria compartida  Posicionamiento cursor (gráfico y/o texto)  Tratamiento de caracteres especiales (ej: Bell, 07)  Gestión de scroll  Algunas operaciones pueden venir aceleradas por hardware

80 80 3. Otros dispositivos Tema 14: Gestión de la Lectura/Escritura 1.Terminales 2.Discos Ópticos

81 81 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura  Tecnologías:  CD AUDIO  CD-ROM  CD-R  CD-RW  DVD  Mismas dimensiones en todos los casos 120 mm 15 mm 1,2 mm

82 82 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura CD-AUDIO  Evolución disco láser 30 cm  Detalles técnicos: ISO10149 (libro rojo)  Grabación:  Disco maestro de vidrio Láser de potencia graba fosos de 3,12 μm Zonas no quemadas: llanos  Disco maestro se imprime en policarbonato: policarbonato aluminio policarbonato transparente etiqueta laca protectora

83 83 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura CD-AUDIO  Lectura:  Se dirige laser de baja potencia contra disco  Longitud de onda: 0,78 μm (1/4 profundidad foso)  Si hay un foso: desfase de ½ longitud onda: cancelación de onda (no refleja)  Codificación por transición: 1 = foso/llano o llano/foso 0 = no transición policarbonato aluminio

84 84 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura CD-AUDIO  Fosos y llanos describen una espiral  Comienza en agujero  22188 revoluciones (paso de 1,6μm)  Originalmente: velocidad lineal constante  530 rpm en zona central  200 rpm en zona externa

85 85 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura CD-ROM  Versión para datos de anterior soporte  Libro amarillo normaliza representación de los datos  1 byte = 14 bits (código hamming)  Trama = 24 bytes (588 bits, 192 bits de datos, 396 de control)  1 sector = 98 tramas.  Cada sector consta de:  12 Bytes 00FF00FF….FF00  3 bytes: nº de sector  1 byte: modo Modo 1: 2048 bytes datos + 288 bytes de corrección de errores Modo 2: 2336 bytes de datos  bytes de datos + corrección / bytes de datos

86 86 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura CD-R  CD-R en blanco: un surco guía a cabeza durante la escritura  Una capa de tinte simula la diferencia de reflectividad foso/llano  Colorante: inicialmente transparente  laser en lectura lo pasa (potencia lectura: 0,5 mW  Si potencia 8-16mW: se vuelve oscuro (simula foso) material reflectante policarbonato transparente etiqueta laca protectora tinte

87 87 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura CD-R  Libro naranja: define formato CD-ROM XA (multisesión)  Sesión = conjunto de pistas  Pista = grupo de sectores escritos en una sesión  Cada sesión tiene una TOC (Table of Contents)

88 88 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura CD-RW  En lugar de colorante: aleación de varios metales  Aleación tiene dos posibles estados:  Amorfo (no refleja láser)  Cristalino (refleja láser)  Láser tiene tres niveles de potencia:  Alto: aleación se funde y se vuelve amorfa → crea un “foso”  medio: aleación funde y cristaliza → crea un “llano”  baja: no afecta aleación (se usa para leer)

89 89 3.2 Discos Ópticos Tema 14: Gestión de la Lectura/Escritura DVD  Análogos a CD, pero…  Fosos más pequeños: 0,4μm  Consecuencia: láser de longitud de onda de 0,65μm  Espiral más cerrada  paso de 0,74μm en lugar de 1,6μm  Posibilidad de doble capa  Dos capas superpuestas  A la capa inferior se accede gracias a que la superior es semitransparente

90 90