260 likes | 422 Views
Organización Del Computador I Entrada/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. Memoria. Procesador. Componentes. CPU
E N D
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.
Memoria Procesador Componentes • CPU • Dispositivos de E/S (Disco magnético, teclado, mouse, red, video, etc) • Memoria • BUS de E/S I/O Device I/O Device I/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 Pista Sector Sector • Cilindro: todas las pistas bajo las cabezas en un punto determinado de todas las superficies Plato Head
Discos magnéticos: tiempo de acceso Tiempo de acceso = Tiempo de posicionamiento (seek time) + Retardo medio de rotación + Tiempo de transferencia + Overhead del controlador
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) 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 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
Redes Medio 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
Sistema con un único bus Backplane Bus Processor Memory I/O Devices • 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 Bus Processor Memory Bus Adaptor Bus Adaptor Bus Adaptor I/O Bus I/O Bus I/O Bus Sistema con dos buses • 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 Bus Processor Memory Bus Adaptor Backside Cache bus Bus Adaptor I/O Bus L2 Cache I/O Bus Bus Adaptor 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
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 R/W Address Cmd+Addr Data1 Data2 Data
Transferencia asincrónica Address Data Read Req Ack Master Asserts Address Next Address Slave Data 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
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)