Beruflich Dokumente
Kultur Dokumente
1.3.- INTERRUPCIONES.
Una interrupcin es una operacin que suspende la ejecucin de un programa de modo que el sistema pueda realizar una
accin especial. La rutina de interrupcin ejecuta y por lo regular regresa el control al procedimiento que fue interrumpido,
el cual entonces reasume su ejecucin.
1.3.1.- HARDWARE.
Las interrupciones hardware ocurren cuando un dispositivo necesita atencin del procesador y genera una seal elctrica
en la lnea IRQ que tiene asignada. Esta seal es recogida y procesada por el controlador de excepciones PIC antes de ser
enviada al procesador, lo que puede realizarse de dos formas, segn el tipo de interrupcin sea enmascarable o no
enmascarable.
Cuando se habla de una significa que, bajo control del software, el procesador puede aceptar o ignorar (enmascarar) la
seal de interrupcin. Para ello se enva una seal a la patilla INTR, y el procesador la atiende o la ignora en funcin del
contenido de un bit (IF) en un registro (FLAGS) que puede estar habilitado o deshabilitado. En el primer caso, cuando se
recibe la seal, el procesador concluye la instruccin que estuviese en proceso y a continuacin responde con una
combinacin de seales en algunas de sus patillas componiendo una sucesin de dos seales INTA ("Interrupt
Acknowledge".
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.
El valor recibido (0-255) es multiplicado por 4 para calcular la direccin del vector correspondiente en la tabla de vectores
de interrupcin, lo que se realiza mediante un desplazamiento binario de dos posiciones a la izquierda.
Interrupcin no enmascarable significa que la interrupcin no puede ser deshabilitada por software. Este tipo de
interrupciones ocurren cuando se recibe una seal en la patilla NMI ("Nonmaskable Interrupt") del procesador. Se reservan
para casos en que es crtica la respuesta, por ejemplo que se detecte un error de paridad en la memoria. Adems son de
prioridad ms alta que las enmascarables.
1.3.2- SOFTWARE.
Los procesadores Intel de la gama x86 y compatibles, disponen de una instruccin INT que permite generar por software
cualquiera de los 256 tipos de interrupcin anteriormente descritos. El proceso seguido es exactamente el mismo que si se
recibe una interrupcin hardware en la patilla INTR, salvo que en este caso se conoce el tipo de interrupcin, y no se
requiere ningn ciclo INTA.
Este tipo de interrupciones son de prioridad ms alta que las de hardware (enmascarables y no enmascarables), de forma
que si se recibe una interrupcin hardware mientras que se ejecuta una software, esta ltima tiene prioridad.
FUNCIONES DE LA BIOS.
Las funciones de la BIOS se invocan, desde los programas de usuario, ejecutando una interrupcin software con un cierto
valor inicial en los registros. La BIOS emplea un cierto rango de interrupciones, cada una encargada de una tarea especfica:
INT 10h:
INT 11h:
INT 12h:
INT 13h:
INT 14h:
INT 15h:
INT 16h:
INT 17h:
INT 18h:
INT 19h:
INT 1Ah:
INT 1Fh:
Servicios de teclado.
Servicios de impresora.
Llamar a la ROM del BASIC (slo mquinas IBM).
Reinicializacin del sistema.
Servicios horarios.
Apunta a la tabla de los caracteres ASCII 128-255 (8x8 puntos).