🖥️ Entrada/Salida (E/S), Interrupciones y DMA: ¡Entiéndelo con claridad!
En el mundo de la arquitectura de computadores, la gestión eficiente de los periféricos es clave. Hoy te explico de forma visual y sencilla cómo funciona la Entrada/Salida (E/S), los distintos tipos de interrupciones, y el rol esencial del DMA para lograr una comunicación efectiva entre CPU y dispositivos.
📦 Tipos de Dispositivos
🔹 Dispositivos orientados a bloque
Acceden por bloques completos (ej. discos duros, memorias, discos ópticos, unidades de cinta).
Permiten posicionamiento y direccionamiento.
🔹 Dispositivos orientados a carácter
Trabajan byte a byte, sin dirección específica (ej. teclado, pantalla, impresora).
⚙️ ¿Cómo la CPU gestiona la E/S?
📘 Programación E/S
La CPU gestiona directamente el periférico, inspeccionando su estado.
Interrumpe su ejecución para realizar la operación de E/S.
📥 Canal de E/S
Un programa de canal describe qué se hará con el periférico.
Incluye comandos como:
Transferencia de datos
Comprobación de estado
Rebobinado, carga de cinta, etc.
🔄 Mecanismos de Sincronización CPU-Periférico
🕵️♂️ Sondeo / Polling
La CPU verifica constantemente el estado del dispositivo.
Consume tiempo y recursos.
🚨 Interrupciones
El periférico avisa a la CPU cuando está listo.
Se ejecuta una Rutina de Tratamiento de Interrupción (RTI).
🧠 Secuencia típica:
Periférico lanza señal de interrupción.
CPU detiene ejecución actual.
CPU ejecuta la rutina RTI.
Se reanuda el programa original.
💡 Existen interrupciones:
Enmascarables: pueden ignorarse.
No enmascarables: siempre atendidas.
🔌 Acceso Directo a Memoria (DMA)
El DMA permite que un periférico transfiera datos a memoria sin intervención directa de la CPU.
📉 Problemas si no se usa correctamente:
Puede degradar el rendimiento si bloquea el bus mientras la CPU también lo necesita.
🛠️ Tipos de transferencia DMA
Tipo de DMA Descripción Pros Contras
🔄 Modo ráfaga El DMA bloquea el bus hasta terminar un bloque completo Rápido CPU bloqueada
🔁 Robo de ciclo DMA transfiere palabra a palabra, cediendo el bus frecuentemente CPU sigue operando Transferencia más lenta
👻 Transparente Solo usa el bus cuando la CPU no lo necesita Sin impacto en CPU Muy lento, poco práctico
📚 ¿Qué necesita el DMA?
Registros clave del DMAC (Controlador DMA):
Dirección de memoria inicial
Número de palabras a transferir
Sentido de la operación (lectura o escritura)
Señales de control:
DMA-REQ: Solicitud desde el periférico
DMA-ACK: Confirmación desde el DMA
R/W-IO: Dirección de transferencia
🧬 Modos de conexión del DMA
Modo Características principales
🎯 Bus único DMA independiente, requiere arbitraje
🧩 Bus único integrado DMA y E/S comparten bus en ciclos alternos
🌐 Bus E/S separado Arquitectura escalable, ideal para grandes sistemas
🧠 En resumen:
La E/S puede ser gestionada directamente por la CPU o mediante canales de E/S.
Las interrupciones son clave para mejorar la eficiencia del sistema.
El DMA permite liberar a la CPU de las transferencias, pero debe usarse correctamente.


Deja un comentario