Reconocimiento de Interrupciones

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 4

Definición de interrupción

Una interrupción es un estado en el cual el microprocesador detiene la ejecución de un programa


para atender una petición especial solicitada por el propio programa o por un dispositivo físico
conectado al microprocesador externamente.
Las interrupciones fueron creadas para facilitar al programador el acceso a los diferentes
dispositivos de la computadora (puertos de comunicaciones, terminales, impresoras, etc.).

Ejecución de una interrupción

Cuando durante la ejecución de un programa se produce una interrupción, el microprocesador


realiza los siguientes pasos:
1.- Detiene la ejecución del programa
2.- Almacena los registros CS, IP y Banderas en la pila
3.- Modifica el CS y el IP para que apunten a la dirección donde se encuentra la rutina de
interrupción.
4.- Ejecuta las instrucciones de la rutina de interrupción.
5.- Restablece usando la instrucción RETI los valores originales de los registros CS, IP y Banderas.
6.- Continua con la ejecución del programa en el punto donde fue interrumpido.
Las rutinas se almacenan en la memoria de la computadora cada vez que ésta es inicializada, a esto
se le conoce como vector de interrupciones.

Tipos de interrupciones

El microprocesador puede atender dos tipos de interrupciones: interrupciones por software e


interrupciones por hardware.

Las interrupciones por software son llamadas desde los programas y son proporcionadas por el
sistema operativo (MS-DOS). Existen dos tipos de estas: las interrupciones del DOS y las
interrupciones del BIOS (Basic Input Output System o Sistema Básico de Entrada/Salida). Estas
interrupciones son invocadas con la instrucción INT del ensamblador.
Por otro lado, las interrupciones por Hardware son proporcionadas por el propio microprocesador y
también existen dos tipos: interrupciones por hardware internas y las interrupciones por hardware
externas. Las interrupciones internas son invocadas por el microprocesador cuando se produce
alguna operación incorrecta, como por ejemplo, un intento de dividir por cero o una transferencia de
datos entre registros de diferentes longitudes.

Las interrupciones externas son provocadas por los dispositivos periféricos conectados al
microprocesador. Para lograr esto, a cada dispositivo periférico se le asigna una línea física de
interrupción que lo comunica con el microprocesador por medio de un circuito integrado auxiliar, el
cual se conoce como controlador programable de interrupciones (PIC).

Las computadoras basadas en el microprocesador 8086/8088 cuentan solamente con un PIC, con lo
cual pueden proporcionar hasta 8 líneas de interrupción (IRQ), las cuales son llamadas IRQ0 a
IRQ7, por otro lado, las computadoras basadas en el microprocesador 80286 y posteriores cuentan
con dos chips controladores, con los cuales pueden proporcionar hasta un máximo de 16 líneas IRQ,
las cuales son llamadas IRQ0 a IRQ15.
La siguiente es una lista de las interrupciones por software disponibles por el sistema operativo.
Interrupciones del BIOS
Manejo de dispositivos periféricos

INT 10H Manejo de la pantalla.


INT 13H Manejo de unidades de disco.
INT 14H Manejo de los puertos de comunicaciones(RS232).
INT 15H Manejo de cinta magnética.
INT 16H Manejo del teclado.
INT 17H Manejo de la impresora.

Reconocimiento de interrupciones

(Cómo adivina la CPU qué o quién provocó la interrupcion).


A.- Interrupciones multinivel: Cada dispositivo que puede provocar interrupcion tiene una
entrada de interrupcion conectada a la CPU. Es muy sencillo, pero muy caro.

B.- Linea de interrupcion unica. Una unica entrada de interrupcion a la que estan
conectados todos los dispositivos. Tiene que “preguntar” a cada dispositivo si ha producido la
interrupcion (tecnica Polling).

C.- Interrupciones vectorizadas. El dispositivo que quiere pedir interrupcion pone en el bus
de datos un identificador (vector), ademas de la señal de interrupcion. Lo puede poner el periferico
directamente, o bien un controlador de interrupciones (que se ocupa de todo)

CPU

Bus de datos
Los dispositivos estan ordenados por orden de importancia, siendo el mas cercano el que
tiene prioridad. Si pone su vector, los demas ya no pueden ponerlo. (tecnica Daisy Chaining).

Procesamiento de interrupciones.

- Se recibe una peticion de interrupcion.


- Se termina de ejecutar la instruccion actual.
- La CPU acepta o rechaza la peticion de interrupcion.
- Se almacena el estado actual de ejecucion (contenido del contador de programas y del
registro de estado) para poder volver.
- El contador de programas pasa a tomar el valor de la direccion de la 1ª instruccion de la
rutina del servicio de interrupcion
IRQ 14 (Primary IDE channel) Interrupcion14

Una interrupción de DOS utiliza para activar las funciones en el puerto serie COM1, COM2.
Otros Usos Comunes: SCSI organizan los adaptadores.
Descripción: En la mayoría de computadoras este IRQ es reservado para el uso por el controlador
de IDE primario que proporciona el acceso a los primeros dos dispositivos de IDE/ATA
(normalmente el disco duro maneja y/o CD-ROM maneja). En máquinas que no usan los
dispositivos de IDE en absoluto, este IRQ puede usarse para otro propósito (como un SCSI
organizador adaptador proporcionar SCSI maneja). para hacer esto, usted tendrá normalmente que
desactivar el IDE encauza o usando el BIOS apropiado que pone (para IDE integrado apoye en las
más nuevas tablas) o los saltadores en el controlador abordan (para máquinas más viejas que usan
un tarjeta controladora IDE).
Conflictos: Los problemas con IRQ14 son raros, Si usted está usando SCSI y no IDE, y quiere usar
IRQ14, asegúrese de desactivar los primero los controladores IDE.
UNIVERSIDAD MARIANO GALVEZ

INVESTIGACION DE INTERRUPCION

BYRON TOLEDO

También podría gustarte