Sunteți pe pagina 1din 4

Interrupciones

Existen tres tipos principales de interrupciones que producen una detencin en la ejecucin normal
de un programa. Se clasifican de la manera siguiente:

Interrupciones requeridas por hardware


Interrupciones requerida por software para interactuar con perifrico

INTERRUPCIONES REQUERIDA POR HARDWARE

Es iniciada por un perifrico que demanda atencin ya que ha ocurrido un evento


relativo a este perifrico que demanda algn procedimiento de parte de la CPU. En
un PC las primeras 16 interrupciones son de este tipo por lo que los primeros 64
bytes de la memoria RAM son direcciones que apuntan bloques de instrucciones
residentes en otras reas de la memoria RAM.

INTERRUPCIONES REQUERIDA POR SOFTWARE PARA INTERACTUAR CON


PERIFRICO

Una caracterstica importante de la operacin de interrupciones es que ellas estn


jerarquizadas para resolver conflictos entre las mltiples interrupciones. Este
mecanismo est basado en la priorizacin de interrupciones de modo que una
interrupcin de mayor prioridad puede interrumpir una de menor prioridad pero no
al revs. De este modo el sistema de interrupciones funciona ordenadamente lo que
permite por ende un funcionamiento robusto del computador.
INTERRUPCIN EXTERNA

Las interrupciones externas provienen de dispositivos de entrada y salida (E/S), de


un dispositivo de temporizacin, de un circuito que monitorea la fuente de
almacenamiento o de cualquier otra fuente externa.
Estas interrupciones se pueden disparar desde el exterior del micro cambiando el
nivel de tensin de uno de sus pines, todas tienen asociadas una o varias patillas
del micro controlador y son las que usaremos para los botones.
Algunos ejemplos de lo que produce interrupciones externas son dispositivos de E/S
que solicitan transferencia de datos, dispositivos de E/S que terminan transferencia
de datos, tiempo transcurrido de un evento o una falla de energa.

INTERRUPCIONES INTERNAS

Son aquellas provocadas dentro del propio procesador por una situacin anormal
de funcionamiento de alguna de sus partes. Las interrupciones internas surgen
debido a la utilizacin ilegal o errnea de una instruccin o datos. Las interrupciones
internas tambin se llaman trampas. Algunos ejemplos de las interrupciones
provocadas por condiciones de error internas son los sobreflujos de registro, intentar
dividir entre cero, un cdigo de operacin no vlido, desbordamiento de pila, y
violacin de la proteccin.

INTERRUPCIONES DE PROGRAMA

Son aquellas que son programables y que podemos cambiar. Las interrupciones de
software podemos llegar a manejarlas y por ello el ensamblador nos proporciona
una instruccin que nos permita poner en funcionamiento una determinada rutina
de interrupcin; esta instruccin es INT.
La interrupcin de programa se inicia al ejecutar una instruccin de solicitud especial
que se comporta como una interrupcin ms que como una solicitud de subrutina.
El programador puede utilizarla para iniciar un procedimiento de interrupcin de
programa se asocia con una instruccin de llamada de supervisor.

TIPOS DE INTERRUPCIONES DE HARDWARE

Interrupcin enmascarable: bajo control del software, el procesador puede


aceptar o ignorar (enmascarar) la seal de interrupcin. La primera seal es
simplemente un aviso; la segunda es una peticin para que el PIC coloque en el
bus de datos un Byte con el nmero de interrupcin, de forma que el procesador
pueda localizar el servicio solicitado.
Interrupcin no enmascarable: la interrupcin no puede ser deshabilitada por
software.

CICLO DE INTERRUPCIN

El procesador comprueba si ah ocurrido alguna interrupcin. Si no hay


interrupciones pendientes, el procesador trae la prxima instruccin del programa
en curso. Si hay una interrupcin pendiente, el procesador suspende la ejecucin
del programa en curso y ejecuta la rutina de tratamiento de la interrupcin

una interrupcin (del ingls interrupt request, en espaol peticin de interrupcin) es una
seal recibida por el procesador de una computadora, para indicarle que debe interrumpir el
curso de ejecucin actual y pasar a ejecutar cdigo especfico para tratar esta situacin.
Una interrupcin es una suspensin temporal de la ejecucin de un proceso, para pasar a
ejecutar una subrutina de servicio de interrupcin, la cual, por lo general, no forma parte del
programa, sino que pertenece al sistema operativo o al BIOS. Una vez finalizada dicha
subrutina, se reanuda la ejecucin del programa.
Las interrupciones son generadas por los dispositivos perifricos habilitando una seal del
CPU (llamada IRQ del ingls "interrupt request") para solicitar atencin del mismo. Por
ejemplo. cuando un disco duro completa una lectura solicita atencin al igual que cada vez
que se presiona una tecla o se mueve el ratn.
La primera tcnica que se emple para esto fue el polling, que consista en que el propio
procesador se encargara de sondear los dispositivos perifricos cada cierto tiempo para
averiguar si tena pendiente alguna comunicacin para l. Este mtodo presentaba el
inconveniente de ser muy ineficiente, ya que el procesador consuma constantemente tiempo
y recursos en realizar estas instrucciones de sondeo.
El mecanismo de interrupciones fue la solucin que permiti al procesador desentenderse de
esta problemtica, y delegar en el dispositivo perifrico la responsabilidad de comunicarse con
l cuando lo necesitara. El procesador, en este caso, no sondea a ningn 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 informacin, una condicin de error, etc.).

S-ar putea să vă placă și