ArqComp t6

Anuncio
Arquitectura de Computadores
Arquitectura de Computadores
Departament d’Informàtica de Sistemes i Computadors
E.P.S.Alcoi
Arquitectura de Computadores
1
Bloque Temático II: Arquitectura de
Computadores
ÖTema 3: Introducción a la arquitectura de
un computador
ÖTema 4: Procesadores segmentados
ÖTema 5: El subsistema de memoria
ÖTema 6: El subsistema de E/S
ÖTema 7: Computadores Superescalares
ÖTema 8: Multiprocesadores
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
2
1
Arquitectura de Computadores
El subsistema de Entrada/Salida
ÖGestión de la Entrada/Salida
ÖPlanificación de discos
Arquitectura de Computadores
3
Categorías de dispositivos de
entrada/salida
Ö Dispositivos legibles por los humanos:
• Apropiados para la comunicación con el usuario.
• Impresoras.
• Terminales de vídeo:
# Pantalla.
# Teclado.
# Ratón.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
4
2
Arquitectura de Computadores
Categorías de dispositivos de
entrada/salida
Ö Dispositivos legibles por la máquina:
•
•
•
•
•
Adecuados para comunicarse con equipos electrónicos.
Discos y unidades de cinta.
Sensores.
Controladores.
Impulsores.
Arquitectura de Computadores
5
Categorías de dispositivos de
entrada/salida
Ö Dispositivos de comunicaciones:
• Apropiados para comunicarse con dispositivos lejanos.
• Adaptadores de líneas digitales.
• Módem.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
6
3
Arquitectura de Computadores
Diferencias entre las clases de
dispositivos de E/S
Ö Velocidad de los datos:
• Puede haber una diferencia de varios órdenes de magnitud
en las velocidades de transmisión de datos.
Arquitectura de Computadores
7
Ethernet de gigabit
Pantalla gráfica
Disco duro
Ethernet
Disco óptico
Escáner
Impresora láser
Disco flexible
Módem
Ratón
Teclado
101
102
103
104
105
106
107
108
109
Velocidad de datos (bps)
Figura 11.1. Velocidades de datos de dispositivos de E/S típicos.
Tema 6: El subsistema de Entrada/Salida
4
Arquitectura de Computadores
Diferencias entre las clases de
dispositivos de E/S
Ö Aplicaciones:
• Un disco que almacena archivos necesita el soporte de un
software de gestión de archivos.
• Un disco usado como almacén de páginas de un sistema
de memoria virtual necesita el soporte de un software y de
un hardware especial.
• Puede que un terminal usado por el administrador del
sistema tenga una prioridad mayor.
Arquitectura de Computadores
9
Diferencias entre las clases de
dispositivos de E/S
Ö Complejidad del control.
Ö Unidad de transferencia:
• Los datos pueden transmitirse como flujos de
bytes para un terminal o en bloques mayores para
un disco.
Ö Representación de los datos:
• Esquemas de codificación.
Ö Condiciones de error:
• Cada dispositivo responde a los errores de
diferente manera.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
10
5
Arquitectura de Computadores
Técnicas para realizar la E/S
Ö E/S programada:
• El proceso espera a que termine la operación.
Ö E/S dirigida por interrupciones:
• Se emite una orden de E/S.
• El procesador continúa con la ejecución de las
instrucciones.
• El módulo de E/S lo interrumpe cuando completa su
trabajo.
Arquitectura de Computadores
11
Técnicas para realizar la E/S
Ö Acceso directo a la memoria (DMA):
• Un módulo de DMA controla el intercambio de datos entre
la memoria principal y el dispositivo de E/S.
• El procesador se interrumpe sólo cuando se ha transferido
el bloque entero.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
12
6
Arquitectura de Computadores
Evolución de las funciones de la E/S
Ö El procesador controla directamente los dispositivos
periféricos.
Ö Se añade un controlador o módulo de E/S:
• El procesador utiliza E/S programada sin interrupciones.
• El procesador se aisla de los detalles específicos de las
interfaces con dispositivos externos.
Arquitectura de Computadores
13
Evolución de las funciones de la E/S
Ö Controlador o módulo de E/S con interrupciones:
• El procesador no tiene que desperdiciar tiempo esperando
a que se realice una operación de E/S.
Ö Acceso directo a la memoria:
• Se puede mover un bloque de datos a la memoria sin que
intervenga el procesador.
• El procesador sólo interviene al principio y al final de la
transferencia.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
14
7
Arquitectura de Computadores
Evolución de las funciones de la E/S
Ö El módulo de E/S es un procesador separado.
Ö Procesador de E/S:
• El módulo de E/S posee su propia memoria local.
• Es un computador independiente.
Arquitectura de Computadores
15
Acceso directo a la memoria
Ö Toma el control del sistema desde la CPU para transferir datos
desde y hacia la memoria a través del bus del sistema.
Ö Se utiliza el robo de ciclos para transferir datos a través del bus del
sistema.
Ö El ciclo de instrucción se suspende para dar paso a la transferencia
de datos.
Ö La CPU espera un ciclo del bus.
Ö No existe interrupción alguna:
• No salva el contexto.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
16
8
Arquitectura de Computadores
DMA
Cuenta
de datos
Líneas de datos
Líneas de direcciones
Solicitud de DMA
Reconocimiento de DMA
Interrupción
Lectura
Escritura
Arquitectura de Computadores
Registros
de datos
Registros
de dirección
Lógica
de control
Figura 11.2. Diagrama de bloques de un DMA típico.
17
DMA
Ö El robo de ciclos hace que la CPU ejecute más
lentamente.
Ö El número de ciclos de bus requeridos se puede acortar
mediante la integración de las funciones del DMA y de la
E/S.
Ö Debe haber un camino entre el módulo de DMA y el
módulo de E/S que no pasen por el bus del sistema.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
18
9
Arquitectura de Computadores
Tiempo
Ciclo de instrucción
Ciclo del
procesador
Ciclo del
procesador
Ciclo del
procesador
Ciclo del
procesador
Ciclo del
procesador
Ciclo del
procesador
Leer
instrucción
Descodificar
instrucción
Leer
operando
Ejecutar
instrucción
Almacenar
resultado
Interrupción
del proceso
Puntos de
ruptura por DMA
Puntos de ruptura
por interrupción
Figura 11.3. Puntos de ruptura por DMA y por interrupción en un ciclo de instrucción.
DMA
Procesador
DMA
E/S
E/S
Memoria
(a) DMA separada de bus sencillo
Figura 11.4. Configuraciones posibles de DMA.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
20
10
Arquitectura de Computadores
DMA
Procesador
DMA
DMA
Memoria
E/S
E/S
E/S
(b) DMA integrada de bus sencillo
Figura 11.4. Configuraciones posibles de DMA.
Arquitectura de Computadores
21
DMA
Bus del sistema
Procesador
DMA
Memoria
Bus de E/S
E/S
E/S
E/S
(c) Bus de E/S
Figura 11.4. Configuraciones posibles de DMA.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
22
11
Arquitectura de Computadores
Aspectos de diseño en los sistemas
operativos
Ö Eficiencia:
• La mayoría de los dispositivos de E/S son
extremadamente lentos en comparación con la
memoria principal.
• El uso de la multiprogramación permite que algunos
procesos esperen en operaciones de E/S mientras
otro proceso se está ejecutando.
• La E/S no puede seguir el paso de la actividad del
procesador.
• Se utiliza el intercambio para introducir más procesos
listos, que es una operación de E/S.
Arquitectura de Computadores
23
Aspectos de diseño en los sistemas
operativos
Ö Generalidad:
• Es preferible gestionar todos los dispositivos de E/S de
una manera uniforme.
• Oculta la mayoría de los detalles de la E/S con dispositivos
en rutinas de bajo nivel, de forma que los procesos y los
niveles superiores contemplen a los dispositivos en
términos generales, como la lectura, escritura, apertura,
cierre, bloqueo y desbloqueo.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
24
12
Arquitectura de Computadores
Procesos
de usuario
Procesos
de usuario
Procesos
de usuario
Gestión de
directorios
E/S lógica
Arquitectura de
comunicaciones
Sistema de
archivo
Organización
física
E/S con
dispositivos
E/S con
dispositivos
E/S con
dispositivos
Planificación
y control
Planificación
y control
Planificación
y control
Hardware
Hardware
Hardware
(a) Dispositivo periférico local
(b) Puerto de comunicaciones
(c) Sistema de archivos
Figura 11.5. Un modelo de organización de E/S.
Almacenamiento intermedio de la E/S
Ö Razones para el almacenamiento intermedio:
• Los procesos deben esperar a que termine la operación de
E/S para continuar.
• Algunas páginas deben permanecer en la memoria
principal durante la E/S.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
26
13
Arquitectura de Computadores
Almacenamiento intermedio de la E/S
Ö Dispositivos orientados a bloque:
• La información se almacena en bloques de tamaño fijo.
• Las transferencias de un bloque se realizan cada vez.
• Se utilizan para los discos y las cintas.
Ö Dispositivos orientados a flujo:
• Transfieren los datos como una serie de bytes.
• Se utilizan para los terminales, impresoras, puertos de
comunicación, ratones y otros dispositivos que no son de
almacenamiento secundario.
Arquitectura de Computadores
27
Memoria intermedia sencilla
Ö El sistema operativo asigna a una solicitud de E/S un
espacio en la parte del sistema de la memoria principal.
Ö Dispositivos orientados a bloque:
• Las transferencias de entrada se realizan en el espacio del
sistema.
• Cuando sea necesario, el proceso mueve el bloque al
espacio del usuario.
• El proceso mueve otro bloque al espacio:
# Lectura por adelantado.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
28
14
Arquitectura de Computadores
Almacenamiento intermedio de E/S
Sistema operativo
Dispositivo de E/S
Proceso de usuario
Entrar
(a) Sin almacenamiento intermedio
Sistema operativo
Dispositivo de E/S
Entrar
Proceso de usuario
Mover
(b) Almacemiento intermedio sencillo
Figura 11.6. Esquemas de almacenamiento intermedio de E/S (entrada).
Arquitectura de Computadores
29
Memoria intermedia sencilla
Ö Dispositivos orientados a bloque:
• El proceso de usuario puede procesar un bloque de datos
mientras se está leyendo el siguiente.
• Se puede dar el intercambio, ya que la entrada tiene lugar
en la memoria del sistema y no en la memoria de usuario.
• El sistema operativo debe guardar constancia de las
asignaciones de memorias intermedias del sistema a
procesos de usuario.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
30
15
Arquitectura de Computadores
Memoria intermedia sencilla
Ö Dispositivos orientados a flujo:
• Se aplica por líneas.
• La entrada del ususario a partir de un terminal se realiza
por líneas, marcadas con un retorno de carro al final de la
misma.
• La salida al terminal es línea a línea.
Arquitectura de Computadores
31
Memoria intermedia doble
Ö Utiliza dos almacenes intermedios del sistema en lugar
de uno.
Ö Un proceso puede transferir datos hacia o desde una
memoria intermedia mientras que el sistema operativo
vacía o rellena el otro.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
32
16
Arquitectura de Computadores
Memoria intermedia circular
Ö Se usan más de dos memorias intermedias.
Ö Cada memoria intermedia individual constituye una
unidad de la memoria intermedia circular.
Ö Se usan cuando las operaciones de E/S han de ir al
ritmo del proceso.
Arquitectura de Computadores
33
Almacenamiento intermedio de E/S
Sistema operativo
Dispositivo de E/S
Entrar
Proceso de usuario
Mover
(c) Almacenamiento intermedio doble
Proceso de usuario
Sistema operativo
Dispositivo de E/S
Entrar
Mover
(d) Almacenamiento intermedio circular
Figura 11.6. Esquemas de almacenamiento intermedio de E/S (entrada).
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
34
17
Arquitectura de Computadores
El subsistema de Entrada/Salida
ÖGestión de la Entrada/Salida
ÖPlanificación de discos
Arquitectura de Computadores
35
Parámetros de rendimiento del disco
Ö Para leer o escribir, la cabeza debe ponerse en la pista
deseada, al comienzo del sector pertinente.
Ö Tiempo de búsqueda:
• Es el tiempo que se tarda en ubicar la cabeza en la pista
deseada.
Ö Retardo o latencia de giro:
• Es el tiempo que tarda el comienzo del sector en llegar
hasta la cabeza.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
36
18
Arquitectura de Computadores
Media del tiempo de una transferencia
de E/S a disco
Espera por
dispositivo
Espera por
canal
Búsqueda
Retardo
de giro
Transferencia
de datos
Dispositivo ocupado
Figura 11.7. Media del tiempo de una transferencia de E/S a disco.
Arquitectura de Computadores
37
Parámetros de rendimiento del disco
Ö Tiempo de acceso:
• Es la suma del tiempo de búsqueda y el retardo de giro.
• Es decir, es el tiempo que se tarda en llegar a la posición
de lectura o escritura.
Ö La transferencia de datos tiene lugar a medida que el
sector se mueve bajo la cabeza.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
38
19
Arquitectura de Computadores
Políticas de planificación del disco
Ö La razón de la diferencia en el rendimiento puede
encontrarse en el tiempo de búsqueda.
Ö Para un disco sencillo, habrá un número de solicitudes
de E/S.
Ö Si se eligen las solicitudes en un orden aleatorio, se
obtendrá el peor rendimiento posible.
Arquitectura de Computadores
39
Políticas de planificación del disco
Ö Primero en entrar, primero en salir (FIFO):
• Las solicitudes se procesan en un orden secuencial.
• Es una estrategia justa para todos los procesos.
• Esta técnica se parece mucho a la planificación aleatoria si
hay muchos procesos.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
40
20
Arquitectura de Computadores
Políticas de planificación del disco
Ö Prioridad:
• No persigue la optimización del uso del disco, sino cumplir
con otros objetivos.
• Los trabajos por lotes que sean cortos tienen una prioridad
más alta.
• Proporciona un buen tiempo de respuesta interactiva.
Arquitectura de Computadores
41
Políticas de planificación del disco
Ö Último en entrar, primero en salir:
• Buena política para los sistemas de proceso de
transacciones:
# El hecho de conceder el dispositivo al último usuario acarrea
pocos o nulos movimientos del brazo.
• Existe la posibilidad de inanición, ya que puede que el
trabajo no vuelva a ganar la cabeza de la línea.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
42
21
Arquitectura de Computadores
Políticas de planificación del disco
Ö Primero el tiempo de servicio más corto:
• Elegir la solicitud de E/S a disco que requiera el menor
movimiento posible del brazo del disco desde su posición
actual.
• Siempre se elige procurando el mínimo tiempo de
búsqueda.
Arquitectura de Computadores
43
Políticas de planificación del disco
Ö SCAN:
• El brazo sólo se puede mover en un sentido, resolviendo
todas las solicitudes pendientes de su ruta hasta que
alcance la última pista o hasta que no haya más solicitudes
en esa dirección.
• Se produce un cambio en la dirección.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
44
22
Arquitectura de Computadores
Políticas de planificación del disco
Ö C-SCAN:
• Restringe el rastreo a una sola dirección.
• Cuando se haya visitado la última pista en un sentido, el
brazo vuelve al extremo opuesto del disco y comienza a
recorrerlo de nuevo.
Arquitectura de Computadores
45
Políticas de planificación del disco
Ö SCAN de N pasos:
• Divide la cola de solicitudes del disco en subcolas de
longitud N.
• Las subcolas se procesan una a una mediante un SCAN.
• Mientras se procesa una cola, se añadirán nuevas
solicitudes a las otras.
Ö FSCAN:
• Emplea dos subcolas.
• Una de las colas permanece vacía en espera de nuevas
solicitudes.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
46
23
Arquitectura de Computadores
Algoritmos de planificación del disco
Tabla 11.3. Algoritmos de planificación de disco [WIED87].
Nombre
Descripción
Comentarios
Selección en función del demandante:
RSS
Planificación aleatoria
Para análisis y simulación
FIFO
Primero en entrar, primero en salir
El más justo de todos
PRI
Prioridad del proceso
El control se lleva fuera de la gestión de
LIFO
Último en entrar, primero en salir
la cola del disco
Maximiza el uso de recursos y cercanía
Selección en función del elemento solicitado:
SSTF
SCAN
Primero el más corto
Gran aprovechamiento y colas pequeñas
Recorre el disco de un lado a otro
Mejor distribución del servicio
C-SCAN
Recorre el disco en un solo sentido
Menor variabilidad en el servicio
SCAN de N pasos
SCAN de N registros a la vez
Garantía de servicio
FSCAN
SCAN de N pasos, con N =longitud
de la cola al comienzo del ciclo
del SCAN
Sensible a la carga
Arquitectura de Computadores
47
RAID 0 (no redundante)
banda 0
banda 1
banda 2
banda 3
banda 4
banda 5
banda 6
banda 7
banda 8
banda 9
banda 10
banda 11
banda 12
banda 13
banda 14
banda 15
(a) RAID 0 (no redundante)
Figura 11.9A. Niveles RAID.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
48
24
Arquitectura de Computadores
Disco
físico 0
Disco
físico 1
Disco
físico 2
banda 0
banda 0
banda 1
banda 2
banda 3
banda 1
banda 4
banda 5
banda 6
banda 7
Disco lógico
Disco
físico 3
banda 2
banda 8
banda 9
banda 10
banda 11
banda 3
banda 12
banda 13
banda 14
banda 15
banda 4
banda 5
banda 6
Software
de gestión
del vector
banda 7
banda 8
banda 9
banda 10
banda 11
banda 12
banda 13
banda 14
banda 15
Figura 11.10. Correspondencia de datos para una serie RAID nivel 0.
RAID 1 (espejo)
banda 0
banda 1
banda 2
banda 3
banda 0
banda 1
banda 2
banda 4
banda 5
banda 6
banda 7
banda 4
banda 5
banda 6
banda 7
banda 8
banda 9
banda 10
banda 11
banda 8
banda 9
banda 10
banda 11
banda 12
banda 13
banda 14
banda 15
banda 12
banda 13
banda 14
banda 15
banda 3
(b) RAID 1 (espejo)
Figura 11.9A. Niveles RAID.
Tema 6: El subsistema de Entrada/Salida
25
Arquitectura de Computadores
RAID 2 (redundancia mediante código
Hamming)
b0
b1
b2
b3
F4(b)
F1(b)
F2(b)
(c) RAID 2 (redundancia mediante código Hamming)
Figura 11.9A. Niveles RAID.
RAID 3 (paridad por intercalación de
bits)
b0
b1
b2
b3
P(b)
(d) RAID 3 (paridad por intercalación de bits)
Figura 11.9B. Niveles RAID.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
52
26
Arquitectura de Computadores
RAID 4 (paridad por intercalación de
bloques)
bloque 1
bloque 2
bloque 3
P(0-3)
bloque 4
bloque 5
bloque 6
bloque 7
P(4-7)
bloque 8
bloque 9
bloque 10
bloque 11
P(8-11)
bloque 12
bloque 13
bloque 14
bloque 15
P(12-15)
bloque 0
(e) RAID 4 (paridad por intercalación de bloques)
Figura 11.9B. Niveles RAID.
Arquitectura de Computadores
53
RAID 5 (paridad por intercalación distribuida de bloques)
bloque 0
bloque 1
bloque 2
bloque 3
bloque 4
bloque 5
bloque 6
P(4-7)
bloque 7
bloque 8
bloque 9
P(8-11)
bloque 10
bloque 11
P(0-3)
bloque 12
P(12-15)
bloque 13
bloque 14
bloque 15
P(16-19)
bloque 16
bloque 17
bloque 18
bloque 19
(f) RAID 5 (paridad por intercalación distribuida de bloques)
Figura 11.9B. Niveles RAID.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
54
27
Arquitectura de Computadores
RAID 6 (redundancia dual)
Q(0-3)
bloque 1
bloque 2
bloque 4
bloque 5
bloque 6
P(4-7)
Q(4-7)
bloque 7
bloque 8
bloque 9
P(8-11)
Q(8-11)
bloque 10
bloque 11
bloque 12
P(12-15)
Q(12-15)
bloque 13
bloque 14
bloque 15
bloque 0
P(0-3)
bloque 3
(g) RAID 6 (redundancia dual)
Figura 11.9B. Niveles RAID.
Arquitectura de Computadores
55
Cache de disco
Ö Es una memoria intermedia situada en la memoria
principal para sectores de disco.
Ö Contiene una copia de algunos sectores del disco.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
56
28
Arquitectura de Computadores
Usado Menos Recientemente (LRU)
Ö Se reemplaza el bloque que ha permanecido sin
referencias en la cache durante más tiempo.
Ö La cache está formada por una pila de bloques.
Ö El bloque referenciado más recientemente está
en la cima de la pila.
Ö Cuando se hace referencia un bloque de la
cache, se le mueve hasta la cima de la pila.
Arquitectura de Computadores
57
Usado Menos Recientemente
Ö Cuando se trae un bloque nuevo, se elimina el bloque
que está en el fondo de la pila.
Ö En realidad estos bloques no se mueven por la memoria
principal.
Ö Se utiliza una pila de punteros.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
58
29
Arquitectura de Computadores
Usado Menos Frecuentemente (LFU)
Ö Se sustituye el bloque que ha sufrido un menor número de
referencias.
Ö Se asocia un contador a cada bloque.
Ö Con cada referencia al bloque, el contador se incrementa.
Ö Cuando hace falta un reemplazo, se selecciona el bloque con menor
valor del contador.
Ö Puede que se haga referencia a algunos bloques a intervalos cortos
de referencias repetidas y que, por lo tanto, no necesiten ser
referenciados nuevamente .
Arquitectura de Computadores
59
E/S en UNIX SVR4
Subsistema de archivos
Cache de buffers
Carácter
Bloque
Gestor de dispositivo
Figura 11.14. Estructura de la E/S en UNIX.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
60
30
Arquitectura de Computadores
E/S en WINDOWS 2000
Gestor de E/S
Gestor
de cache
Controladores de
sistema de archivos
Controladores de
red
Controladores de
dispositivos hardware
Figura 11.16. Gestión de E/S en Windows 2000.
Arquitectura de Computadores
Tema 6: El subsistema de Entrada/Salida
61
31
Descargar