Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Interrupciones
Interrupciones
IR Q’ S
¿Qué es una Interrupción?
Las IRQ son avisos que el hardware envía al
CPU a través de señales físicos de los circuitos
de la misma CPU. Las solicitudes de
interrupción están basadas en un sistema de
prioridades de modo que el procesador pueda o
no ignorar determinadas peticiones.
¿Qué es una Interrupción?
IRQ es un acrónimo de Interrupt ReQuest,
traducida como solicitud de interrupción o
interrupción de hardware.
¿Cómo funciona?
Cuando un periférico, (por
ejemplo una impresora) u otro
dispositivo hardware ( una
tarjeta de sonido), necesitan
"comunicarse" con la CPU
utilizan una líneas de notificación
preestablecidas denominadas
líneas de interrupción .
Cómo funciona?
Cuando la impresora se queda sin papel envía
una petición de interrupción al procesador el
cual puede decidir si analizarla en el momento
o aplazarla.
¿Cómo funciona?
Una CPU puede estar ocupada
procesando billones de
operaciones por segundo, lo que
hace una IRQ es avisar de una
nueva tarea pendiente de ser
examinada. El procesador, una
vez ejecutada la tarea solicitada
con la IRQ, vuelve a su anterior
operación.
Funcionamiento
Los dispositivos hardware que necesitan ejecutarse
transmiten una IRQ al procesador para llamar su
atención. La tarjetas de red, de video, de sonido, un
módem, los adaptadores SCSI, los dispositivos de
tipo IDE/ADE, los periféricos USB, por puerto paralelo
o serie, todos disponen de un canal prioritario para
comunicarse con la CPU denominado "Número de
IRQ".
TABLA IRQ’S
PRIORIDAD USO DESCRIPCIÓN CONFLICTOS
Un conflicto en IRQ 15 es
Reservado al controlador IDE
Canal IDE comúnmente debido al uso
secundario, puede utilizarse para
IRQ15 10 Secundario /
tarjetas de red o SCSI previa
de dispositivos no IDE /ATA
Libre sin haber desactivado en
deshabilitación en el BIOS setup.
BIOS.
Nota:
En las nuevas placas base este circuito está integrado
junto con el resto del chipset y permite hasta 24
interrupciones. En sistemas más modernos utilizan la
arquitectura APIC de Intel con 24 líneas y 8 extra para
enrutar las interrupciones PCI.
Jerarquía
Como se puede observar en la tabla IRQ, la prioridad
más alta corresponde al temporizador del sistema
(IRQ 0), seguida por el controlador del teclado (IRQ
1), ambos exclusivos y no disponibles para otros usos.
Sucesivamente, a partir del micro-procesador Intel
286[, las líneas IRQ fueron aumentadas a 16 con la
novedad, para las nuevas ranuras de 16 bits, que la
jerarquía de importancia no seguía el orden linear (de
IRQ 0 a IRQ 15).
Jerarquía
Además se introducía un sistema cascada" desde la IRQ 2 hasta la IRQ
9 por lo que las IRQs realmente utilizadas eran 15: la IRQ 2 ya no estaba
libre, al contrario, permitía conectar el segundo controlador Slave PIC
al primero Master PIC Esto porque en los sistemas basados sobre la
arquitectura Intel 8259 los puertos IRQ de 0 a 7 están gobernados por el
controlador Master PIC mientras que los IRQ de 8 a 15 se rigen por el
controlador Slave PIC.
Conflictos
Se genera un conflicto entre IRQ cuando dos o más
dispositivos de hardware tratan de utilizar la misma
línea de interrupción. Esto puedo ocurrir por ejemplo
al instalar un nuevo periférico o al añadir un
componente hardware (conflicto hardware). Para
evitar que un ordenador o un portátil incurran en
error de hardware es necesario configurar
correctamente las líneas de interrupción.
Conflictos
En las PC actuales, la modificación y la configuración
de IRQ es prácticamente automática, la BIOS y el SO
se encargan de ello.
El incremento de puertos IRQ disponibles, así como
la introducción de los dispositivos Plug-and Play
(PnP), fueron un paso adelante.
Tipos de interrupciones
Interrupciones de hardware. Estas son asíncronas a
la ejecución del procesador, es decir, se pueden
producir en cualquier momento independientemente
de lo que esté haciendo el CPU en ese momento. Las
causas que las producen son externas al procesador y
a menudo suelen estar ligadas con los distintos
dispositivos de E/S.
Tipos de interrupciones
Excepciones. Son aquellas que se producen de forma
síncrona a la ejecución del procesador y por tanto
podrían predecirse si se analiza con detenimiento la
traza del programa que en ese momento estaba
siendo ejecutado en la CPU. Normalmente son
causadas al realizarse operaciones no permitidas
tales como la división entre 0, el desbordamiento, el
acceso a una posición de memoria no permitida, etc.
Tipos de interrupciones
Interrupciones por software. Las interrupciones por
software son aquellas generadas por un programa en
ejecución. Para generarlas, existen distintas
instrucciones en el código máquina que permiten al
programador producir una interrupción, las cuales
suelen tener nemotécnicos tales como INT (por
ejemplo, en DOS se realiza la instrucción INT 0x21 y
en Unix se utiliza INT 0x80 para hacer llamadas de
sistema