Interrupciones

Solo disponible en BuenasTareas
  • Páginas : 8 (1942 palabras )
  • Descarga(s) : 0
  • Publicado : 18 de noviembre de 2011
Leer documento completo
Vista previa del texto
República Bolivariana de Venezuela
Ministerio del Poder Popular para la Defensa
Universidad Nacional Experimental de las Fuerzas Armadas
UNEFA-Mérida

Bachiller:
*Lisandro Briceño
CI :19.042.396

Mérida, Octubre del 2011

Que son interrupciones
Las interrupciones surgen de las necesidades que tienen los dispositivos periféricos de enviar información al procesador principal de unsistema de computación. La primera técnica que se empleó fue que el propio procesador se encargara de sondear los dispositivos cada cierto tiempo para averiguar si tenía pendiente alguna comunicación para él. Este método presentaba el inconveniente de ser muy ineficiente, ya que el procesador constantemente consumía tiempo en realizar todas las instrucciones de sondeo.
El mecanismo deinterrupciones fue la solución que permitió al procesador desentenderse de esta problemática, y delegar en el dispositivo la responsabilidad de comunicarse con el procesador cuando lo necesitara. El procesador, en este caso, no sondea a ningún dispositivo, sino que queda a la espera de que estos le avisen (le "interrumpan") cuando tengan algo que comunicarle (ya sea un evento, una transferencia de información,una condición de error, etc.)
Funcionamiento del mecanismo de interrupciones
Cada dispositivo que desea comunicarse con el procesador por medio de interrupciones debe tener asignada una línea única capaz de avisar al CPU que le requiere para una operación. Esta línea es la llamada IRQ ("Interrupt ReQuest", petición de interrupción).
Las IRQ son líneas que llegan al controlador deinterrupciones, un componente de hardware dedicado a la gestión de las interrupciones, y que puede estar integrado en el procesador principal o ser un circuito separado conectado al procesador principal. El controlador de interrupciones debe ser capaz de habilitar o inhibir líneas de interrupción (operación llamada comúnmente enmascarar por la utilización de una máscara), y establecer prioridades entre lasdistintas interrupciones habilitadas. Cuando varias líneas de petición de interrupción se activan a la vez, el controlador de interrupciones utilizará estas prioridades para escoger la interrupción sobre la que informará al procesador principal. Sin embargo hay interrupciones que no se pueden enmascarar o deshabilitar, las conocidas como interrupciones no enmascarables.

Pasos para el procesamientode una IRQ:
1. Terminar la ejecución de la instrucción de máquina en curso.
2. Salva el valor de contador de programa, IP, en la pila, de manera que en la CPU, al terminar el proceso, pueda seguir ejecutando el programa a partir de la última instrucción.
3. La CPU salta a la dirección donde está almacenada la rutina de servicio de interrupción (Interrupt Service Routine (ISR)) yejecuta esa rutina que tiene como objetivo atender al dispositivo que generó la interrupción.
4. Una vez que la rutina de la interrupción termina, el procesador restaura el estado que había guardado en la pila en el paso 2 y retorna al programa que se estaba usando anteriormente.
Líneas de petición de interrupción
El bus de control dispone de líneas específicas para el sistema de interrupciones.En el IBM PC y XT existen 8 líneas de petición de interrupción manejadas por el controlador de interrupciones Intel 8259. Estas líneas están numeradas del 0 al 7, las dos primeras están asignadas al timer tick del temporizador Intel 8253, y al teclado. Solo quedaban 6 líneas para otros dispositivos, que aparecen como tales en el bus de control (IRQ2 - IRQ7). A partir del modelo AT se añadieronotras 8 líneas, numeradas del 8 al 15, mediante un segundo controlador de interrupciones (PIC), aunque la tecnología empleada exigió colgarlo de la línea IRQ2 del primero, de forma que esta línea se dedica a atender las interrupciones del segundo controlador a través de la línea 9 de este último, y la línea 8 se dedicó al reloj de tiempo real, un dispositivo que no existía en los modelos XT....
tracking img