View
226
Download
0
Category
Preview:
Citation preview
OrganizaciónDel
Computador IEntrada/Salida
Verano 2004
Entrada / Salida
• Interfase con el mundo externo
• No es posible pensar un sistema real sin E/S
• Influye (y mucho!) sobre la performance total del sistema.
Ejemplo – Ley de Amdahl
Frecuencia Tpo CPU Tpo I/O Total %IO/Total
50 MHz 90 seg 10 seg 100 seg 10%
100 MHz 45 seg 10 seg 55 seg 18%
200 MHz 22.5 seg 10 seg 32.5 seg 30%
400 MHz 11.25 seg 10 seg 21.25 seg 47%
1 GHz 4.5 seg 10 seg 14.5 seg 68%
Componentes• CPU
• Dispositivos de E/S (Disco magnético, teclado, mouse, red, video, etc)
• Memoria
• BUS de E/S
MemoriaProcesadorI/O
DeviceI/O
DeviceI/O
Device
Ejemplo básico de E/S: Carga de dato desde disco
• Proceso hace llamada al SO.
• SO envía comandos al controlador de disco
• El controlador prepara el disco para la transferencia.
• Cuando el controlador tiene el dato, escribe en memoria y genera una interrupción.
• El SO atiende la interrupción
• El proceso retoma el control
¿Cómo evaluar perfomance?
¿De qué factores depende el rendimiento de E/S?
•Tiempo de “preparación” del disco
•Tiempo de transferencia desde el disco hacia el controlador
•Eficiencia de la comunicación Procesador / Dispositivo
¿¿¿QUÉ ES “MEJOR” EN E/S???
¿Latencia? ¿Ancho de banda?
¿Cantidad de operaciones simultáneas?
¡Todo depende!
Según la aplicación, podremos elegir qué característica es deseable...
Alta interactividad, transferencias pequeñas: LATENCIA!
Grandes transferencias de datos: ANCHO DE BANDA!
Muchas transferencias independientes entre si: # DE OPERACIONES SIMULTANEAS
Ejercicio: pensar un escenario donde sea deseable tener baja latencia yalta cantidad de operaciones simultaneas.
Dispositivos de Entrada/Salida
Discos Magnéticos, Interfases de Red y Buses
Discos Magnéticos
Platos
Pista
SectorSectorPista
HeadPlato
°Cilindro: todas las pistas bajo las cabezas en un punto determinado de todas las superficies
Discos magnéticos: tiempo de accesoTiempo de acceso = Tiempo de posicionamiento (seek time) +
Retardo medio de rotación +
Tiempo de transferencia +
Overhead del controlador
Velocidad de rotación 10.000 rpm
Seek time (av) 4.5 ms
Full-stroke 10.2 ms
Transfer rate (buffer -> disk) 816 Mbits/s
Ejemplo:
Usando los datos del disco anterior, calcular el tiempo medio requerido para leer o escribir un sector de 512 bytes. Suponer que el disco está inactivo y un overhead del controlador de 1 ms.
Ejemplo (cont)
Tpo acceso = Tpo Búsqueda + Retardo medio de rotación + Tpo Transferencia + Overhead del controlador
Tpo acceso = 4.5ms + 1.5ms + 0.005 ms + 1 ms = 7.005 ms
Retardo medio de rotación=(20000rpm/60s)
20000revs -> 1min1 rev -> 1min/20000 = 60s/20000 = 60000ms/20000 = 3 ms½ rev -> 1.5 ms
Tiempo de trasferencia =
816Mbit => 1s512*8 bits => 1s/(816*106)*4096 = 0.005 ms
RedesMedio mas popular de comunicación entre computadoras.
Mucha variedad de características (distancia, velocidad, topología, latencia…)
Ejemplos:
RS-232
Ethernet
ATM
Buses de E/S
Medio de comunicación entre los distintos subsistemas.
BUS: enlace de comunicación COMPARTIDO, que utiliza un conjunto de cables para conectar múltiples subsistemas.
Vantajas: barato, simple, versátil.Desventajas: escalabilidad (medio de acceso compartido), velocidad limitada por la longitud, # y tipo de dispositivos a conectar.
Espacio de diseño: ancho de banda, buffers, tamaño de bloque, tipo de dispositivos a conectar, protocolo.
BUS = Lineas de Control + Lineas de Datos
Organización de un Bus• Líneas de control:
– Indican requests y acknowledgments– Indican que tipo de información hay en las líneas
de datos
• Líneas de datos llevan la información entre el origen y el destino:– Datos y direcciones– Comandos complejos
Tipos de buses• Bus Procesador-Memoria (bus propietario)
– Short and high speed
– Only need to match the memory system• Maximize memory-to-processor bandwidth
– Connects directly to the processor
– Optimized for cache block transfers
• Bus de E/s (buses standard)– Usually is lengthy and slower
– Need to match a wide range of I/O devices
– Connects to the processor-memory bus or backplane bus
• Bus Backplane (standard o propietario)– Backplane: an interconnection structure within the chassis
– Allow processors, memory, and I/O devices to coexist
– Cost advantage: one bus for all components
• A single bus (the backplane bus) is used for:– Processor to memory communication– Communication between I/O devices and memory
• Advantages: Simple and low cost
• Disadvantages: slow and the bus can become a major bottleneck
• Example: IBM PC - AT
Processor Memory
I/O Devices
Backplane Bus
Sistema con un único bus
• I/O buses tap into the processor-memory bus via bus adaptors:– Processor-memory bus: mainly for processor-memory traffic– I/O buses: provide expansion slots for I/O devices
• Apple Macintosh-II– NuBus: Processor, memory, and a few selected I/O devices– SCSI Bus: the rest of the I/O devices
Processor Memory
I/OBus
Processor Memory Bus
BusAdaptor
BusAdaptor
BusAdaptor
I/OBus
I/OBus
Sistema con dos buses
Sistema con dos buses
• A small number of backplane buses tap into the processor-memory bus– Processor-memory bus is only used for processor-memory
traffic
– I/O buses are connected to the backplane bus
• Advantage: loading on the processor bus is greatly reduced
Processor Memory
Processor Memory Bus
BusAdaptor
BusAdaptor
BusAdaptor
I/O Bus
BacksideCache bus
I/O BusL2 Cache
Buses sincrónicos y asincrónicos
Síncronos: incluyen señal de reloj (clk) en las líneas de control. Protocolo muy simple (maquina de estados finitos), relacionado al clk. Todos los dispositivos tienen la misma velocidad de reloj Problema de sesgo de reloj!
Asíncrono: Sin señal de reloj (clk) Puede alojar gran variedad de dispositivos. Mayor longitud Protocolo mucho mas complicado (handshaking)
Transferencia sincrónica
BReq
BG
Cmd+AddrR/WAddress
Data1 Data2Data
Transferencia asincrónicaAddress
Data
Read
Req
Ack
Master Asserts Address Next Address
t0 t1 t2 t3 t4 t5
t0 : Master has obtained control and asserts address, direction, data
Waits a specified amount of time for slaves to decode target.
t1: Master asserts request line
t2: Slave asserts ack, indicating ready to transmit data
t3: Master releases req, data received
t4: Slave releases ack
Slave Data
Otros factores•Ancho del bus de datos
•Líneas de dirección separadas versus multiplexadas
•Transferencias en bloque
Arbitración del bus
Arbitración paralela centralizada
Arbitración distribuida por autoselección
Arbitración distribuida por detección de colisiones
Apéndice: tecnología de arreglos de discos (si tienen ganas)
Recommended