Controlador de interrupciones

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 20 de agosto de 2022; la verificación requiere 1 edición .

El controlador de interrupción ( Controlador de interrupción programable, PIC ) es un  chip o una unidad de procesador integrada responsable de la capacidad de procesar secuencialmente las solicitudes de interrupción de diferentes dispositivos.

Descripción

Como regla general, es un dispositivo electrónico, a veces hecho como parte del propio procesador o microcircuitos complejos de su estructura, cuyas entradas están conectadas eléctricamente a las salidas correspondientes de varios dispositivos. El número de entrada del controlador de interrupción se designa como "IRQ". Este número debe distinguirse de la prioridad de interrupción, así como del número de entrada en la tabla de vectores de interrupción (INT). Entonces, por ejemplo, en la PC de IBM en modo real ( MS-DOS se ejecuta en este modo ), la interrupción del procesador desde el teclado estándar usa IRQ 1 e INT 9.

La plataforma de PC de IBM original usaba un esquema de interrupción muy simple. El controlador de interrupción es un contador simple que recorre las señales de diferentes dispositivos en secuencia o se restablece al principio cuando se encuentra una nueva interrupción. En el primer caso, los dispositivos tienen la misma prioridad, en el segundo caso, los dispositivos con un número de secuencia más bajo (o más alto) tienen una prioridad más alta [1] .

Los controladores de interrupción en la plataforma x86 son responsables de recibir señales de interrupción de los dispositivos, hacer coincidir la señal con un vector IDT y luego interrumpir uno o más procesadores en el sistema usando el vector IDT. Sin embargo, la plataforma x86 tiene algunas características adicionales. En primer lugar, debido a las limitaciones de los controladores y buses de interrupción originales utilizados en el PC-AT , se agregaron enrutadores de interrupción programables independientes a la plataforma y se colocaron entre las señales de interrupción PCI y los controladores de interrupción del PC-AT. En segundo lugar, a medida que la plataforma x86 evolucionó, se introdujo un conjunto completamente nuevo de controladores de interrupción, conocidos como Controladores de interrupción programables avanzados ( APIC ). Para mantener la compatibilidad con versiones anteriores, los sistemas APIC también incluyen controladores de interrupción PC-AT, y cualquiera de los sistemas se puede usar para manejar interrupciones en sistemas modernos. Incluso puede usar ambos al mismo tiempo [2] .

Véase también

Notas

  1. Intel 8259
  2. Controladores de interrupción (Cosas en el medio) . gente.freebsd.org . Consultado: 6 de septiembre de 2022.

Literatura