You are on page 1of 91

Sistemas Operativos

Tema 14: Gestión de la


Lectura/Escritura
(Tema 11 en apuntes prof. Rovayo)

1
Tema 14: Gestión de la Lectura/Escritura

Índice:

1. Discos Magnéticos

2. Relojes y Alarmas

3. Otros Dispositivos

2
Tema 14: Gestión de la Lectura/Escritura

Índice:

1. Discos Magnéticos

2. Relojes y Alarmas

3. Otros Dispositivos

3
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
4
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
1.1 Hardware de los discos
 Constan de una o más placas circulares que giran
Tema 14: Gestión de la Lectura/Escritura

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

6
Tema 14: Gestión de la Lectura/Escritura

1.1 Hardware de los discos

7
Tema 14: Gestión de la Lectura/Escritura

1.1 Hardware de los discos

8
Tema 14: Gestión de la Lectura/Escritura

1.1 Hardware de los discos

9
Tema 14: Gestión de la Lectura/Escritura

1.1 Hardware de los discos

10
Tema 14: Gestión de la Lectura/Escritura

1.1 Hardware de los discos

11
Tema 14: Gestión de la Lectura/Escritura

1.1 Hardware de los discos

12
Tema 14: Gestión de la Lectura/Escritura

1.1 Hardware de los discos

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

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

 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


14 Sectores por pista
12 Sectores por pista
11 Sectores por pista
9 Sectores por pista
Imágenes tomadas de www.pcguide.com 15
1.1 Hardware de los discos
Organización de la información
Tema 14: Gestión de la Lectura/Escritura

 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

16
1.1 Hardware de los discos
Transferencia de la información
Tema 14: Gestión de la Lectura/Escritura

 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 17
1.1 Hardware de los discos
Particularidades: discos duros
Tema 14: Gestión de la Lectura/Escritura

 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

huella digital: 8μm

cabello: 20μm partícula humo: 2,5μm


0,5μm

18
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
19
1.2 Prestaciones
Realización de una transferencia
Tema 14: Gestión de la Lectura/Escritura

Ta= [Tm] + Tb + Tr + Tx
Tb= nTc + Th

20
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
21
1.3 Mejora del tiempo de arranque
 Ante un acceso con motor parado: hay que arrancarlo
Tema 14: Gestión de la Lectura/Escritura

 Idea: tras acceso, dejar motor encendido un tiempo


 ¡Siguientes accesos no tendrán que esperar Tm!

22
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
23
1.4 Mejora del tiempo de búsqueda
 Ante un único acceso: no se puede hacer nada 
Tema 14: Gestión de la Lectura/Escritura

 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

24
1.4 Mejora del tiempo de búsqueda
Criterio FCFS
Tema 14: Gestión de la Lectura/Escritura

 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

0 5 10 15 20 25 30 35

10 35
20
18
25

Número total de cilindros saltados: 10 + 35 + 20 + 18 + 25 + 3 = 111 25


1.4 Mejora del tiempo de búsqueda
Criterio SSTF
Tema 14: Gestión de la Lectura/Escritura

 Se atiende la petición mas próxima al cilindro actual


de cabezas lectoras
 Ejemplo:
 Cabezal inicialmente en cilindro 11
 Búsquedas: 1, 36, 16, 34, 9, 12

0 5 10 15 20 25 30 35

3 1
7
15
33 2

Número total de cilindros saltados: 1 + 3 + 7 + 15 + 33 + 2 =61 26


1.4 Mejora del tiempo de búsqueda
Criterio SSTF
Tema 14: Gestión de la Lectura/Escritura

 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

27
1.4 Mejora del tiempo de búsqueda
Criterio SCAN
Tema 14: Gestión de la Lectura/Escritura

 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
0 5 10 15 20 25 30 35

1 4
18 2
8
27

Número total de cilindros saltados: 1 + 4 + 18 + 2 + 27 + 8 = 60 28


1.4 Mejora del tiempo de búsqueda
Criterio SCAN
Tema 14: Gestión de la Lectura/Escritura

 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
0 5 10 15 20 25 30 35

29
1.4 Mejora del tiempo de búsqueda
Criterio C-SCAN
Tema 14: Gestión de la Lectura/Escritura

 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
0 5 10 15 20 25 30 35

1 4
18 2
35

8
Número total de cilindros saltados: 1 + 4 + 18 + 2 + 35 + 8 = 68 30
1.4 Mejora del tiempo de búsqueda
Criterio C-SCAN
Tema 14: Gestión de la Lectura/Escritura

 Ventajas:
 Iguala el número de oportunidades de ser atendidas de
peticiones en cilindros centrales y extremos
0 5 10 15 20 25 30 35

 Inconvenientes:
 Peticiones a extremos aún siguen siendo aplazadas por
peticiones centrales que lleguen después

31
1.4 Mejora del tiempo de búsqueda
Criterio F-SCAN
Tema 14: Gestión de la Lectura/Escritura

 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

32
1.4 Mejora del tiempo de búsqueda
Criterio N-SCAN
Tema 14: Gestión de la Lectura/Escritura

 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,

0 5 10 15 20 25 30 35

1
22
25
20
7
35

33
1.4 Mejora del tiempo de búsqueda
Criterio N-SCAN
Tema 14: Gestión de la Lectura/Escritura

 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)

34
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
35
1.5 Mejora del tiempo de rotación
 Misma idea que mejora tiempo de búsqueda: reducir
Tema 14: Gestión de la Lectura/Escritura

tiempo medio de búsqueda

 Estrategias:
 Intercalado de sectores
 Ordenación circular
 Transferencia de pista completa

36
1.5 Mejora del tiempo de rotación
Intercalado de sectores
Tema 14: Gestión de la Lectura/Escritura

 El problema: si se procesan dos sectores consecutivos,


es probable que el segundo sector “se escape”

Quiero el sector X,
Estupendo, pues ahora
porfaplease…
quiero el X+1…

37
1.5 Mejora del tiempo de rotación
Intercalado de sectores
Tema 14: Gestión de la Lectura/Escritura

 La solución: que sectores lógicos consecutivos no


estén físicamente adyacentes:
0 0 0
7 1 7 4 5 3

6 2 3 1 2 6

5 3 6 5 7 1
4 2 4
Numeración natural Intercalado = 1 Intercalado = 2

NLS NFS
 Intercalado se puede llevar a cabo: 0 0

 Durante el formateo 1 2

 Por software, en el propio gestor 2 4


3 6
38



1.5 Mejora del tiempo de rotación
Ordenación circular
Tema 14: Gestión de la Lectura/Escritura

 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
7 1
2
6 Orden: 3, 6, 7, 0, 1

5 3
4
39
1.5 Mejora del tiempo de rotación
Transferencia de pista completa
Tema 14: Gestión de la Lectura/Escritura

 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

40
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
41
1.6 Tratamiento de errores
 Tipos de errores:
Tema 14: Gestión de la Lectura/Escritura

 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

42
1.6 Tratamiento de errores
Errores transitorios de datos
Tema 14: Gestión de la Lectura/Escritura

 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 43
1.6 Tratamiento de errores
Errores permanentes de datos
Tema 14: Gestión de la Lectura/Escritura

 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
44
1.6 Tratamiento de errores
Errores permanentes de datos
Tema 14: Gestión de la Lectura/Escritura

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

45
1.6 Tratamiento de errores
Errores permanentes de datos
Tema 14: Gestión de la Lectura/Escritura

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! 

46
1.6 Tratamiento de errores
Errores de localización
Tema 14: Gestión de la Lectura/Escritura

 Descipció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

47
1.6 Tratamiento de errores
Errores de controlador
Tema 14: Gestión de la Lectura/Escritura

 Descipció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

48
Tema 14: Gestión de la Lectura/Escritura

Índice:

1. Discos Magnéticos

2. Relojes y Alarmas

3. Otros Dispositivos

49
2. Relojes y alarmas
Tema 14: Gestión de la Lectura/Escritura

1. Hardware

2. Actividades relacionadas con el reloj

50
2. Relojes y alarmas
Tema 14: Gestión de la Lectura/Escritura

1. Hardware

2. Actividades relacionadas con el reloj

51
2.1 Hardware
 Dispositivo temporizador más simple: Temporizador de
Tema 14: Gestión de la Lectura/Escritura

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
52
2. Relojes y alarmas
Tema 14: Gestión de la Lectura/Escritura

1. Hardware

2. Actividades relacionadas con el reloj

53
2.2 Actividades relacionadas con el reloj
 Suposición: hardware sólo genera interrupciones (ticks)
Tema 14: Gestión de la Lectura/Escritura

 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

54
2.2 Actividades relacionadas con el reloj
Fecha y hora
Tema 14: Gestión de la Lectura/Escritura

 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
…

55
2.2 Actividades relacionadas con el reloj
Cuanto de tiempo y límite de ejecución
Tema 14: Gestión de la Lectura/Escritura

 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 …

56
2.2 Actividades relacionadas con el reloj
Contabilidad del tiempo de ejecución
Tema 14: Gestión de la Lectura/Escritura

 Programar interrupción periódica


 Un contador por cada proceso
 En cada interrupción: se incrementa contador a proceso
activo
 Si costoso acceder a PCB: contador global que se vuelca en
PCB cuando se conmuta
 Resultados: sólo una aproximación
P t
P1 P1 P3 P1 P3 P1 P1 P3 P3 P1 P1 P1 P1 P3 P3
P1 9
P3
P2 P2 0
P1 P3 6
57
2.2 Actividades relacionadas con el reloj
Contabilidad del tiempo de ejecución
Tema 14: Gestión de la Lectura/Escritura

 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 tick sorprende funcionando a SO?

58
2.2 Actividades relacionadas con el reloj
Temporizadores y alarmas
Tema 14: Gestión de la Lectura/Escritura

 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
… 59
2.2 Actividades relacionadas con el reloj
Temporizadores y alarmas
Tema 14: Gestión de la Lectura/Escritura

 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/a t
T1 3
2
1
0
T2 2
1
0
T3 5
4
3
2
1
0
… …
 Inconvenientes:
 Por cada tick hay que recorrer tabla completa

60
2.2 Actividades relacionadas con el reloj
Temporizadores y alarmas
Tema 14: Gestión de la Lectura/Escritura

 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)

lista 12:00:01 12:00:05 13:15:12 …

 Ventajas:
 No hay que explorar la lista completa
61
2.2 Actividades relacionadas con el reloj
Temporizadores y alarmas
Tema 14: Gestión de la Lectura/Escritura

 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

lista 3
0
1
2
12:00:01 40
12:00:05 9070
13:15:12 …

 Ventajas:
 No hay que explorar la lista completa
 Más simple que mecanismo anterior
62
2.2 Actividades relacionadas con el reloj
Temporizadores y alarmas
Tema 14: Gestión de la Lectura/Escritura

 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

Proxima Alarma: 12325 Proc alarm


Fecha y hora: 12321
12323
12322
12325
12324 T1 12325
T2 18620
T3 12325
… …
63
2.2 Actividades relacionadas con el reloj
Perfiles de tiempo de ejecución
Tema 14: Gestión de la Lectura/Escritura

 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

64
2.2 Actividades relacionadas con el reloj
Perfiles de tiempo de ejecución
Tema 14: Gestión de la Lectura/Escritura

 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;
}
65
Tema 14: Gestión de la Lectura/Escritura

Índice:

1. Discos Magnéticos

2. Relojes y Alarmas

3. Otros Dispositivos

66
3. Otros dispositivos
Tema 14: Gestión de la Lectura/Escritura

1. Terminales

2. Discos Ópticos

67
3. Otros dispositivos
Tema 14: Gestión de la Lectura/Escritura

1. Terminales

2. Discos Ópticos

68
3.1 Terminales
 Dos tipos totalmente distintos de terminal:
Tema 14: Gestión de la Lectura/Escritura

 Terminales externos
 Terminales con memoria compartida

Terminales externos:
 Sistema autónomo conectado a través de algún tipo de
sistema de comunicaciones

Interfaz
procesador Memoria comunicaciones

BUS
69
3.1 Terminales
Terminales con memoria compartida
Tema 14: Gestión de la Lectura/Escritura

 Se trata de tres dispositivos independientes:


 Pantalla
 Teclado
 Ratón
 Fuertemente relacionados entre ellos

procesador Memoria Adaptador Adaptador Adaptador


Teclado ratón Pantalla

BUS
70
3.1 Terminales
Pantalla
Tema 14: Gestión de la Lectura/Escritura

 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
m. video
Adaptador
procesador Memoria Pantalla

BUS 71
3.1 Terminales
Teclado
Tema 14: Gestión de la Lectura/Escritura

 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
72
3.1 Terminales
Ratón
 Dispone de un microcontrolador que provoca una
Tema 14: Gestión de la Lectura/Escritura

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 73
3.1 Terminales
Ratón
Tema 14: Gestión de la Lectura/Escritura

 Tecnologías:
 Mecánico
 Óptico
 Láser

Imagen tomada de wikipedia.org


74
3.1 Terminales

Software de lectura del terminal


Tema 14: Gestión de la Lectura/Escritura

 Lectura de caracteres:
 Atender interrupciones de
• teclado (terminales con memoria compartida)
• Sistema de comunicaciones (terminales externos)
 Gestión de combinaciones de teclas Terminales
 Mapas de caracteres con
memoria
 Composición de caracteres especiales (acentos, etc.) compartida
 Repetición de caracteres

75
3.1 Terminales
Software de lectura del terminal
Tema 14: Gestión de la Lectura/Escritura

 Caracteres de control
 Algunos caracteres pueden tener significado especial:
• Backspace, Ctrl-C, teclas de movimiento de cursor…
 Modos de funcionamiento:
• Elaborado
• Semielaborado
• No elaborado

76
3.1 Terminales
Software de lectura del terminal
Tema 14: Gestión de la Lectura/Escritura

 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

77
3.1 Terminales
Software de lectura del terminal
Tema 14: Gestión de la Lectura/Escritura

 Eco de las pulsaciones


 No es complicado, excepto tratamiento casos especiales:
• Borrado
• Tabulación
• Ultima columna de una linea
• Carácter de fin de linea
• etc.

78
3.1 Terminales
Software de escritura del terminal
Tema 14: Gestión de la Lectura/Escritura

 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
79
3. Otros dispositivos
Tema 14: Gestión de la Lectura/Escritura

1. Terminales

2. Discos Ópticos

80
3.2 Discos Ópticos
 Tecnologías:
Tema 14: Gestión de la Lectura/Escritura

 CD AUDIO
 CD-ROM
 CD-R
 CD-RW
 DVD
 Mismas dimensiones en todos los casos

1,2 mm
15 mm
120 mm

81
3.2 Discos Ópticos
CD-AUDIO
Tema 14: Gestión de la Lectura/Escritura

 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
transparente
aluminio policarbonato
laca protectora
82
etiqueta
3.2 Discos Ópticos
CD-AUDIO
Tema 14: Gestión de la Lectura/Escritura

 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

aluminio policarbonato

83
3.2 Discos Ópticos
CD-AUDIO
Tema 14: Gestión de la Lectura/Escritura

 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

84
3.2 Discos Ópticos
CD-ROM
Tema 14: Gestión de la Lectura/Escritura

 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
85
3.2 Discos Ópticos
CD-R
Tema 14: Gestión de la Lectura/Escritura

 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)

policarbonato
transparente
tinte
material reflectante
laca protectora
etiqueta
86
3.2 Discos Ópticos
CD-R
Tema 14: Gestión de la Lectura/Escritura

 Libro naranja: define formato CD-ROM XA (multisesión)


 Sesión = conjunto de pistas
 Pista = grupo de sectores escrito en una sesión
 Cada sesión tiene una TOC (Table of Contents)

87
3.2 Discos Ópticos
CD-RW
Tema 14: Gestión de la Lectura/Escritura

 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)

88
3.2 Discos Ópticos
DVD
Tema 14: Gestión de la Lectura/Escritura

 Análogos a CD, pero…


 Fosos más pequeños: 0,4μm
 Consecuencia: laser 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

89
90
91

You might also like